Der AT89C51 ist ein Chip, der auf einem 8-Bit-CMOS-Mikrocontroller basiert, von Atmel hergestellt wird und auch als Mikrocontroller der 8051-Serie bekannt ist. Er wird vor allem in eingebetteten Systemen verwendet und bietet Vorteile wie hohe Flexibilität, Programmierbarkeit und Benutzerfreundlichkeit. Er findet Anwendung in verschiedenen Bereichen wie der industriellen Steuerung, der Automobilelektronik und intelligenten Instrumenten und ist zu einem bedeutenden Vertreter der MCS-51-Mikrocontroller-Familie geworden.
Einführung in den Mikrocontroller AT89C51
Der AT89C51 ist ein Niederspannungs-CMOS-8-Bit-Mikroprozessor mit hoher Leistung und einem programmierbaren und löschbaren 4-KB-Flash-Nur-Lese-Speicher (FPEROM). Er wird unter Verwendung der hochdichten nichtflüchtigen Speichertechnologie von Atmel hergestellt und ist mit dem industriellen Standard-Befehlssatz und der Pinbelegung MCS-51 kompatibel. Durch die Kombination einer vielseitigen 8-Bit-CPU und eines Flash-Speichers auf einem einzigen Chip ist der AT89C51 von Atmel ein effizienter Mikrocontroller, der eine flexible und kostengünstige Lösung für viele eingebettete Steuerungssysteme bietet.
Merkmale des AT89C51
- Kompatibel mit MCS-51
- 4 KB programmierbarer FLASH-Speicher
- Lebensdauer: 1000 Schreib-/Löschzyklen
- Datenhaltbarkeit: 10 Jahre
- Vollständig statischer Betrieb: 0 Hz–24 MHz
- Dreistufige Programmspeichersperre
- 128 x 8 Bit interner RAM
- 32 programmierbare E/A-Leitungen
- Zwei 16-Bit-Timer/Zähler
- Fünf Interrupt-Quellen
- Programmierbarer serieller Kanal
- Energiesparmodi für Leerlauf und Abschaltung
- On-Chip-Oszillator und Taktschaltung
Funktionen des AT89C51
1. Datenverarbeitung: Der AT89C51 verfügt über eine leistungsstarke Datenverarbeitungsfähigkeit, mit der er verschiedene Aufgaben der Datenverarbeitung, -speicherung und -übertragung bewältigen kann. Er kann verschiedene Datenoperationen mit integrierten Komponenten wie der arithmetisch-logischen Einheit (ALU), dem Flash-Speicher und dem RAM-Speicher ausführen.
2. Peripheriesteuerung: Der AT89C51 verfügt über mehrere Peripherieschnittstellen, darunter universelle Ein-/Ausgangspins (GPIO), eine serielle Schnittstelle, eine SPI-Schnittstelle und zwei 16-Bit-Timer/Zähler, die für die Kommunikation und Steuerung anderer Hardwaregeräte verwendet werden können.
3. Interrupt-Behandlung: Der AT89C51 unterstützt verschiedene Arten von Interrupts, darunter externe Interrupts, Timer-Interrupts und serielle Schnittstellen-Interrupts. Diese Interrupts ermöglichen eine schnelle Reaktion auf externe Ereignisse und die Ausführung entsprechender Interrupt-Service-Routinen.
4. Zeitsteuerung: Der AT89C51 verfügt über zwei 16-Bit-Timer/Zähler, die zur Erzeugung von Timer-Interrupts, zur Frequenzmessung, zur Pulsweitenmodulation und für andere zeitbezogene Anwendungen verwendet werden können.
5. Programmierbare Upgrades: Dank der Verwendung von Flash-Speicher kann das Programm des AT89C51 durch Programmierung geändert werden, was System-Upgrades und -Erweiterungen erleichtert.
AT89C51 Struktur
Die interne Struktur des Mikrocontrollers AT89C51 zeigt die wichtigsten Funktionskomponenten innerhalb des Chips:

1. Eine 8-Bit-Zentraleinheit (CPU) mit einer arithmetisch-logischen Einheit (ALU) für Berechnungen und Steuerungsaufgaben.
2. 128 Byte interner datenzugänglicher Speicher (interner RAM) mit einem Adressbereich von 00H bis 7FH.
3. 21 Spezialfunktionsregister (SFRs), verteilt im Adressbereich von 80H bis FFH, die für verschiedene Steuerungsfunktionen verwendet werden.
4. Ein Programmzähler (PC), ein dediziertes 16-Bit-Register zum Speichern der Adresse des nächsten auszuführenden Befehls.
5. 4 KB interner Flash-Speicher (On-Chip-ROM) zum Speichern von Programmen und Daten.
6. Vier programmierbare 8-Bit-E/A-Ports (P0, P1, P2, P3).
7. Ein serieller UART-Kommunikationsport.
8. Zwei 16-Bit-Timer/Zähler.
9. Fünf Interrupt-Quellen und ein zweistufiges Interrupt-Steuerungssystem.
10. On-Chip-Oszillator und Taktschaltung.
AT89C51 Pin-Konfiguration
Der Mikrocontroller AT89C51 verfügt über 40 Pins, die in vier Gruppen unterteilt sind: Stromversorgung, Taktgeber, Steuerung und E/A-Ports.

Power-Pins:
– GND (Pin 20): Masseanschluss.
– Vcc (Pin 40): Gleichstromversorgungseingang, typischerweise 5,0 V ±20 % im Bereich von -40 °C bis 85 °C, mit einer maximalen Nennspannung von 6,6 V.
Uhrstifte:
– XTAL1 (Pin 19): Einer der Pins zum Anschluss eines externen Oszillatorelements, z. B. eines Quarzoszillators.
– XTAL2 (Pin 18): Der andere Pin zum Anschluss eines externen Oszillatorelements.
Bei Verwendung eines externen Oszillators empfängt XTAL1 das Signal des Oszillators, während XTAL2 unverbunden bleibt. Diese Konfiguration bildet den Oszillator, dessen Frequenz durch den Kehrwert der Oszillatorperiode bestimmt wird.
(Hinweis: Die Übersetzung ist recht detailliert. Wenn Sie eine prägnantere Version bevorzugen, lassen Sie es mich bitte wissen.)
Steuerstifte:
1. RST (Pin 9): Reset-Eingang (wird für die Initialisierung und den Neustart verwendet).
Der Reset kann auf zwei Arten erfolgen: durch einen Power-On-Reset und durch einen manuellen Reset (durch Drücken einer Reset-Taste). Dazu muss der RST-Pin mindestens zwei Maschinenzyklen lang auf hohem Pegel bleiben, bevor er auf einen niedrigen Pegel wechselt. Dazu gehört eine kleine Schaltung mit Widerständen und Kondensatoren. Die erste Methode wird durch Anlegen einer hohen Spannung an diesen Schaltkreis erreicht, während die zweite Methode so einfach ist wie das Drücken einer Taste. Beide Methoden stellen sicher, dass der RST-Pin für zwei Maschinenzyklen auf hohem Pegel bleibt, wodurch der Reset-Vorgang abgeschlossen wird.
2. ALE/PROG (Pin 30): Adress-Latch-Freigabe/Programmierimpuls.
Dieser Pin, der während der Programmierung auch als PROG verwendet wird, kommt beim Herunterladen von Programmen auf den Mikrocontroller zum Einsatz. Er steht in Zusammenhang mit Programmierimpulsen und erzeugt während der Programmierung bestimmte Wellenformen.
3. PSEN (Pin 29): Externes ROM-Lesesignal.
PSEN steht im Zusammenhang mit dem Lesen von Daten aus dem externen ROM. Es fungiert als Bedingung für das Lesen von Daten und erfordert ein gültiges PSEN-Signal, um Daten erfolgreich lesen zu können.
4. EA/Vpp (Pin 31): Auswahl internes/externes ROM/Programmierspannung.
Der Mikrocontroller 51 verfügt über einen integrierten ROM-Speicher von 4 KB. Reicht dieser nicht aus, kann er mit einem externen ROM erweitert werden (ähnlich wie beim Einlegen einer Speicherkarte in ein Mobiltelefon). Der Wert von EA bestimmt, ob Sie auf Daten aus dem internen oder externen Speicher zugreifen. Vpp wird verwendet, um während der Programmierung Spannung anzulegen.
Blockdiagramm des Mikrocontrollers AT89C51
Das folgende Diagramm zeigt die grundlegenden Funktionsblöcke des Mikrocontrollers AT89C51. Dieser Chip integriert die Hauptkomponenten eines Mikrocomputers, darunter CPU, Speicher, programmierbare E/A-Ports, Timer/Zähler, serielle Schnittstelle usw. Alle diese Komponenten sind über einen internen Bus miteinander verbunden.

AT89C51 vs. 8051 Mikrocontroller
8051: Steht für die zweite Generation von Mikrocontrollern, die zur MCS-51-Serie gehören. AT89C51: Ein von ATMEL entwickelter Mikrocontroller, der mit MCS-51 kompatibel ist und zur dritten Generation von Mikrocontrollern gehört.
MCS-51-Mikrocontroller beziehen sich auf eine Serie von Mikrocontrollern, die von Intel in den Vereinigten Staaten hergestellt werden. Diese Serie umfasst die Modelle 8031, 8051, 8751, 8032, 8052 und 8752. Der Mikrocontroller 8051 ist das früheste und typischste Produkt dieser Serie. Der AT89C51 basiert auf der Kernschaltung des 8051 und wurde später von ATMEL entwickelt. Es gibt auch ähnliche Mikrocontroller wie den STC51, die die gleiche Funktionalität haben, aber von anderen Unternehmen hergestellt werden und andere Präfixe haben. Im Wesentlichen haben der AT89C51 und der 8051 identische Funktionen, aber der 8051 ist nicht mehr auf dem Markt erhältlich.




