MENÜ English Ukrainian Russisch Startseite

Kostenlose technische Bibliothek für Bastler und Profis Kostenlose technische Bibliothek


ENZYKLOPÄDIE DER FUNKELEKTRONIK UND ELEKTROTECHNIK
Kostenlose Bibliothek / Schemata von radioelektronischen und elektrischen Geräten

8XC51CB Mikrocontroller von INTEL. Enzyklopädie der Funkelektronik und Elektrotechnik

Kostenlose technische Bibliothek

Lexikon der Funkelektronik und Elektrotechnik / Mikrocontroller

Kommentare zum Artikel Kommentare zum Artikel

Die 8XC51GB-Gruppe umfasst die Mikrocontroller 80C51GB, 83C51GB, 87C51GB, 80C51GB-1, 83C51GB-1 und 87C51GB-1. Zum Zeitpunkt des Verfassens dieses Artikels wurden sie alle in einem 68-poligen PLCC-Gehäuse hergestellt und mit dem Präfix N gekennzeichnet (N80C51GB, N83C51GB usw.). Die Chips werden nach der SNMOS III-E-Technologie von Intel hergestellt. Versionen mit programmierbarem internen ROM haben kein transparentes Fenster im Gehäuse, gehören also zur Kategorie der einmalig programmierbaren. Dies schränkt den Kreis ihrer Verbraucher etwas ein, da beim Debuggen nicht durch Versuch und Irrtum mit wiederholter Neuprogrammierung des Kristalls gearbeitet werden kann, sondern der Einsatz des entsprechenden Emulators erforderlich ist.

Die ersten drei der oben genannten Controller arbeiten mit einer Taktsignalfrequenz von 3,5 bis 12 MHz, die übrigen arbeiten im Frequenzbereich von 3,5 ... 16 MHz. Die Versorgungsspannung aller Steuerungen beträgt 5 V, Niederspannungsversionen wurden nicht hergestellt.

Technische Hauptmerkmale der Controller der Gruppe 8хС51GB:

  • die Größe des residenten Programmspeichers - 8, 16 oder 32 KB;
  • die Größe des residenten Datenspeichers -256 Byte;
  • 48 Eingabe-Ausgabe-Leitungen (sechs 40-Bit-Ports), davon XNUMX mit Schmitt-Triggern im Eingangskreis;
  • drei 16-Bit-Timer-Zähler, während der dritte zusätzlich in den Modi eines programmierbaren Frequenzausgangs und eines Timer-Zählers mit der Möglichkeit des Vorwärts- und Rückwärtszählens arbeiten kann;
  • zwei Arrays programmierbarer Zähler (PCA und PCA1), die im Vergleichs-/Latch-Modus arbeiten, programmierbarer Timer, Hochgeschwindigkeitsausgang, Pulsweitenmodulator;
  • 15 Unterbrechungsvektoren;
  • vierstufige Unterbrechungsstruktur;
  • Duplex-programmierbarer serieller Port, der automatische Adresserkennung und Formatfehlererkennung (Verlust des Stoppbits) unterstützt:
  • Acht-Bit-Achtkanal-ADC;
  • zwei Modi mit reduziertem Stromverbrauch;
  • Testemulationsmodus "ONCE";
  • Programmierung auf dem verbesserten Algorithmus "schneller Pulsationen";
  • dreistufiges Programmspeicherschutzsystem;
  • erweiterte serielle Schnittstelle;
  • spezialisierter Hardware-Watchdog-Timer;
  • Uhrausfallerkennungssystem.

Die meisten dieser Eigenschaften sind der gesamten MSS51-Familie eigen, weshalb wir nicht näher darauf eingehen. Für diejenigen, die damit nicht vertraut sind, empfehlen wir die Lektüre der in [1-3] veröffentlichten Artikel über Single-Chip-Mikrocomputer. Darüber hinaus wurde bei der Analyse der Mikrocontroller 8xC51Fx, 8x151Fx [4] eine Reihe programmierbarer Zähler ausführlich beschrieben und wird daher auch nur im Hinblick auf ihre Unterschiede zu den im 8xX51Fx verfügbaren berücksichtigt. Gegenstand unseres Kennenlernens sind die Eigenschaften von 8xC51GB, über die keine der anderen Gruppen der MCS51-Familie verfügt.

Beachten Sie, dass die Controller 80C51GB und 80C51GB-1 keinen internen Programmspeicher enthalten, 83C51GB und 83C51GB-1 über ein maskenprogrammierbares ROM mit einer Kapazität von 8 bzw. 16 KB verfügen und 87C51GB und 87C51GB-1 über ein umprogrammierbares ROM mit a verfügen Kapazität von 8 bzw. 32 KB.

ZWECK DER SCHLUSSFOLGERUNGEN

Der Zweck der Schlussfolgerungen der für die Verarbeitung Verantwortlichen der betreffenden Gruppe ist wie folgt:

8XC51CB Mikrocontroller von INTEL

Die meisten dieser Schlussfolgerungen sind denen bekannt, die sich bereits mit Mikrocontrollern der MSS51-Familie beschäftigt haben. Neu sind die Pins der P4-, P5-Ports mit ihren alternativen Funktionen (sie werden nach dem Zeichen / angegeben), Power-Pins (AVrol, AVss) und mit dem ADC verbundene Signale (COMPREF, ACH0-ACH7, TRIGIN), die sein werden werden bei der Beschreibung der entsprechenden Geräte berücksichtigt.

Der RO-Port ähnelt den entsprechenden Ports früherer Mikroschaltungen und führt dieselben Funktionen aus. Die 8xC51GB-Controller verfügen über zwei neue Ports – P4 und P5. Sowie R1-RZ. Es handelt sich um quasi-bidirektionale 1-Bit-I/O-Ports mit einem hohen internen Widerstand, um sicherzustellen, dass die Ausgänge beim Umschalten schnell auf logisch 1 wechseln. Der Widerstand wird für zwei Taktzyklen mit der Ausgangsstufe verbunden, um den Ausgang in den angegebenen Zustand zu bringen, und dann wieder getrennt. Die Ausgänge der Ports P5-P1, die sich im Zustand logisch 1 befinden, haben aufgrund des internen Widerstands ein hohes Potenzial und können in diesem Zustand als Eingänge verwendet werden. Im Gegensatz zu RO sind die Eingangsleitungen der Ports P5-P1 mit Schmitt-Triggern ausgestattet. Fast alle Port-Pins haben einen alternativen Zweck (Tabelle XNUMX). Beim Zurücksetzen werden die Ausgänge des RH-Ports auf einen einzelnen Zustand gesetzt, der Rest wird auf Null gesetzt.

Geben Sie RESET# ein – zurücksetzen. Ein Low-Pegel an diesem Eingang für zwei Maschinenzyklen, während der Taktgenerator läuft, führt zu einem Reset der Steuerung. Die Port-Pins werden in dem Moment in ihren Ausgangszustand versetzt, in dem die Spannung am RESET#-Eingang auf 0,3 ... 0,4 V abfällt. Der Reset-Vorgang dauert fünf Maschinenzyklen (60 Taktzyklen). Es ist zu beachten, dass die Polarität der Reset-Signale der Mikrocontroller der 8xC81GB-Gruppe im Vergleich zu anderen Mikroschaltungen der MSS51-Familie umgekehrt ist. Die Gründe für diese Umkehrung sind dem Autor unbekannt.

Der ALE/PROG#-Eingang ist dem entsprechenden Eingang anderer Controller der MSS51-Familie völlig ähnlich. Beachten Sie, dass der Benutzer bei 8xC51GB die Möglichkeit hat, die Ausgabe des ALE-Signals zu deaktivieren. indem das niedrigstwertige Bit des SFR-Registers, das sich an der Adresse 0EH befindet, auf 8 gesetzt wird. Das A1E-Signal wird nur zum Zeitpunkt der Aktion des MO\/C- oder MO\/X-Befehls ausgegeben, in anderen Fällen wird ein einzelner Pegel an diesem Pin gehalten. Wenn nur mit dem internen Programm- und Datenspeicher gearbeitet wird, liegen überhaupt keine Signale am ALE-Ausgang an.

Der EA#/Vpp-Eingang wird verwendet, um das Abrufen von Befehlen aus dem internen Programmspeicher zu ermöglichen, sofern einer auf dem Chip vorhanden ist und der Eingang mit einem gemeinsamen Draht verbunden ist. Wenn eine einzelne Ebene darauf angewendet wird, wird das Programm aus dem externen Programmspeicher ausgeführt. Letzteres ist jedoch nur so lange möglich, bis die Schutzbits des internen Programmspeichers gesetzt sind, worauf weiter unten eingegangen wird. An diesen Pin wird die Programmierspannung Vpp = 12,75 V angelegt, wenn das interne ROM der Mikroschaltungen 87C51GB, 87C51GB-1 programmiert wird.

UNTERSCHIEDE 8ХС51GВ ZU ANDEREN PRODUKTEN DER MCS51-FAMILIE

Lassen Sie uns also die wichtigsten Unterschiede zwischen den 8xC51GB-Controllern auflisten.

Diese sind:

  • Verbot der Ausgabe eines ALE-Signals an Adresse 8EN;
  • serieller Erweiterungsport SEP;
  • Achtkanal-ADC;
  • zwei zusätzliche Acht-Bit-Ports (P4 und P5);
  • fünf zusätzliche externe Interrupts (INT2-INT6);
  • das Vorhandensein von 15 Unterbrechungsvektoren;
  • Hardware-Watchdog-Timer;
  • die Fähigkeit, den Ausfall des Taktgenerators zu bestimmen;
  • zwei Arrays programmierbarer Zähler (PCA und PCA1). Die 8xC51GB-Controller können im Leerlaufmodus (XX) und im Energiesparmodus (MP) betrieben werden. Tabelle 2 zeigt den Zustand der Mikrocontroller-Pins, wenn sie in diese Modi geschaltet werden.

8XC51CB Mikrocontroller von INTEL

8XC51CB Mikrocontroller von INTEL

KNOTEN-ADC

Der ADC der Mikrocontroller 8хС51GB (siehe Funktionsdiagramm in Abb. 1) verfügt über acht analoge Eingänge (Ausgänge ASN0-ACN7), einen externen Triggereingang TRIGIN, Stromversorgung (AVHrol) und gemeinsame Drahtausgänge (AVss) des analogen Teils, galvanisch isoliert von den entsprechenden digitalen Ausgängen, sowie dem Ausgang der Referenz-(exemplarischen) Vergleichsspannung COMPREF. Der ADC umfasst einen Achtkanal-Multiplexer, ein Widerstandsarray mit 256 Elementen, einen Komparator, ein Abtast-/Haltegerät, acht Ergebnisregister, ein Register für sukzessive Approximation und ein Vergleichsergebnisregister.

Tatsächlich gibt es im SFR-Raum 10 zusätzliche Register. Die Register AD0-AD7 (84Н, 94Н, 0А4Н, 0В4Н, 0С4Н, 0D4Н, 0Е4Н, 0F4Н) enthalten die Konvertierungsergebnisse für jeden der acht Kanäle. Der Wert jedes Registers wird nach Abschluss der Konvertierung im entsprechenden Kanal aktualisiert, beginnend mit Kanal 0.

Das Vergleichsergebnisregister ACMP (0С7Н) enthält acht Flags, die die Ergebnisse des Vergleichs der Signale an den analogen Eingängen ASN0-ACN7 mit der Spannung am COMPREF-Eingang widerspiegeln (Tabelle 3). Das entsprechende Flag wird auf 1 gesetzt, wenn die Eingangsspannung an diesem Analogeingang COMPREF überschreitet, andernfalls wird das Flag gelöscht.

Das ACOM-Register (097H) enthält das ADC-Interrupt-Flag ALF, das ACE-Konvertierungsfreigabebit, zwei Kanalauswahlbits ACSO und ACS1, AIM-Eingabemodus- und ATM-Startmodusbits (Tabelle 4).

8XC51CB Mikrocontroller von INTEL

VERGLEICHSMODUS

Dieser Modus ist immer aktiv und dient zum Vergleich der Spannungen an den Eingängen ACH0-ACN7 mit der Referenzspannung, die am COMPREF-Eingang des Controllers anliegt. Bei jedem Start des ADC ändert sich der Zustand jedes Bits des ASMR-Registers in einen neuen, beginnend mit

Kanal 0, unabhängig vom eingestellten Kanalabfragemodus. Mit diesem Modus können Sie mithilfe einer Hardwaremethode schnell die Art von mehr oder weniger zwei analogen Signalen vergleichen, was die Programmausführung erheblich verkürzen und vereinfachen kann. Wenn der Vergleichsmodus nicht verwendet wird, kann eine beliebige Spannung von Vcc bis Vss an den COMPREF-Eingang angelegt werden.

STARTMODUS

Der ADC kann sowohl von internen als auch von externen Quellen ausgelöst werden. Im ersten Fall muss das ATM-Bit des ACON-Registers auf 1 gesetzt werden. In diesem Modus beginnt die Konvertierung im Zyklus nach dem Zyklus, in dem das ACE-Bit auf 1 gesetzt wurde, bei Kanal 0. Nachdem die Konvertierung abgeschlossen ist , das ALF-Flag ist auf dem siebten Kanal gesetzt. ADC aktiviert, das Setzen des Flags auf 1 führt zu einem Interrupt auf dem ADC-Vektor. Ein neuer Zyklus beginnt nach Abschluss des vorherigen. Wenn Sie das ACE-Bit auf 0 setzen, wird die Konvertierung beendet.

Im externen Triggermodus startet die Wandlung, wenn am TRIGIN-Eingang ein Nullpegel anliegt. Bei diesem Eingang handelt es sich nicht um eine Flankenverriegelung, und sein Zustand wird durch Abfragen in jedem Maschinenzyklus bestimmt. Mit anderen Worten: Um die Konvertierung zu starten, muss die Dauer des Nullpegelsignals am TRIGIN-Eingang größer sein als die Dauer des Maschinenzyklus. Nach dem Start der Schleife bis zu ihrem Abschluss wird der Status des TRIGIN-Eingangs ignoriert und die Konvertierung auf die gleiche Weise wie im vorherigen Fall durchgeführt. Nachdem der Zyklus abgeschlossen ist, stoppt der ADC, bis ein neuer Impuls am TRIGIN-Eingang eintrifft oder bis er intern durch das ACE-Bit ausgelöst wird.

8XC51CB Mikrocontroller von INTEL

LOGIN-MODUS

Das Setzen des AIM-Bits auf 0 versetzt den ADC in den sogenannten Scan-Modus, in dem die Konvertierung in der Reihenfolge ACH1, ACH7 ..... ACH1 durchgeführt wird. Die Ergebnisse der Konvertierung werden jeweils in den ADO-Registern abgelegt. AD7.....ADXNUMX.

Wenn das AIM-Bit nach dem Start des ADC auf 1 gesetzt wird, werden im Kanal vier aufeinanderfolgende Signalkonvertierungen durchgeführt, deren Anzahl durch den Zustand der ACS0- und ACS1-Bits des ACON-Registers bestimmt wird. Die Ergebnisse dieser Signalmessungen auf dem ausgewählten Kanal werden in die Register AD0-AD3 geschrieben. Danach ADC. Wie im Scan-Modus werden die Kanäle ACH4-ACN7 abgefragt. Die Konvertierungsergebnisse werden in AD4-AD7 aufgezeichnet.

ADC FÜR WENIGER KANÄLE VERWENDEN

8XC51CB Mikrocontroller von INTEL

Für den Einsatz von ADCs mit weniger als acht Kanälen gibt es mehrere Möglichkeiten. Wenn die Konvertierungszeit nicht kritisch ist, können Sie einfach auf den Interrupt nach Abschluss der Konvertierung im siebten Kanal warten und die Ergebnisse nur von den ausgewählten Kanälen lesen. Wenn es wichtig ist, das Ergebnis unmittelbar nach Abschluss der Konvertierung im ausgewählten Kanal zu erhalten, empfiehlt Intel, das gewünschte Zeitintervall mithilfe eines Timers und seiner Interrupts zu zählen.

Eine weitere empfohlene Methode besteht darin, den Status des entsprechenden Ergebnisregisters regelmäßig abzufragen. Seine Änderung gibt Aufschluss darüber, dass eine neue Wandlung stattgefunden hat (diese Methode ist jedoch nur geeignet, wenn die gemessene Spannung nicht konstant ist). Durch die Verwendung des Kanalauswahlmodus wird die Konvertierungszeit nicht verkürzt, sondern nur die Anzahl der Messungen im ausgewählten Kanal pro Zyklus erhöht.

ADC IM MICROPOWER-MODUS

Der ADC der 8xC51GB-Controller enthält eine Schaltung, die den Stromverbrauch des Knotens im XX- und MP-Modus auf den Wert des Leckstroms begrenzt. Für die normale Funktion dieser Schaltung muss das Potenzial von Use an den AVioi-Pin des Mikrocontrollers angelegt werden. Während sich der ADC im Energiesparmodus befindet, kann die Versorgungsspannung auf 2,5 V reduziert werden.

ARRAYS PROGRAMMIERBARER ZÄHLER

Der 8xC51GB-Mikrocontroller enthält ein programmierbares Zählerarray (PCA), ähnlich dem, das im 8xC51Fx verwendet wird [4]. 8xC51GB verfügt jedoch auch über ein zweites ähnliches Array – PCA1. Die Unterschiede zu RSA sind wie folgt:

  • Modul 4 PCA1 unterstützt keinen Watchdog-Timer-Modus;
  • externe Schlussfolgerungen von РСА1 sind Schlussfolgerungen Р4.2-Р4.7 (siehe Tabelle 1);
  • die Namen aller RSA1-Register und ihre Bits enthalten eins im Namen (Tabelle 5);
  • Im Steuerregister C1CON des PCA1-Arrays gibt es ein zusätzliches CRE-Bit an der fünften Position (Bitadresse 0EDH). Bei der Einstellung 1 wird der PCA1-Betrieb durch gemeinsames Setzen der CR- und CR1-Bits aktiviert.

Mikrocontroller 8хС51GB unterstützen 15 Interrupt-Vektoren (Tab. 6). Die unteren fünf davon ähneln denen, die in allen Controllern der MSS51-Familie verfügbar sind, der sechste dient als dritter Timer/Zähler (er erschien erst ab den Quarzen der MSS52-Familie), der siebte ist nur in 8xC51FX, 8x151FX und verfügbar 8xC51GB, unterstützt eine programmierbare Zählermatrix (PCA). Letzterer verfügt zusätzlich über Interrupts von fünf externen Eingängen (INT2 – INT6). zweite Matrix aus programmierbaren Zählern, ADC und erweiterter serieller Schnittstelle.

8XC51CB Mikrocontroller von INTEL

Bei allen Controllern der MSS51-Familie kann jeder Interrupt deaktiviert werden, indem das entsprechende Bit im IE-Register auf einen Low-Pegel gesetzt wird. Dies gilt natürlich auch für 8xC51GB. Da es jedoch doppelt so viele Interrupt-Quellen enthält, wird ein zusätzliches IEA-Register verwendet, um diese zu aktivieren/deaktivieren (Tabelle 7). Wie im vorherigen Fall wird durch Setzen des Bits auf 1 der entsprechende Interrupt aktiviert, durch Zurücksetzen auf 0 wird er deaktiviert. Registrieren Sie die Adresse IEA-0A7H. Beachten Sie, dass alle Interrupts, einschließlich der in der Tabelle beschriebenen. 7 kann gleichzeitig deaktiviert werden, indem das Bit EA (IE.0), das höchstwertige Bit des Registers IE, auf 7 gesetzt wird.

8XC51CB Mikrocontroller von INTEL

Jeder Interrupt kann seine eigene Priorität haben (von Ebene 0 – die niedrigste bis Ebene 3 – die höchste). Die Prioritätsstufe wird durch den Zustand der Bits in den Registerpaaren IP, IPH und IPA, IPHA bestimmt. Die erste davon ist mit denen früherer Controller identisch und wird bei der Betrachtung der Gruppe 8xC51Fx ausführlich beschrieben. Das zweite Paar (Registeradressen 0V8H bzw. 0V6H) ist nur in 8xC51GB verfügbar und bedient Interrupts, die nur in diesen Controllern vorhanden sind. In der Tabelle. 8 zeigt die Entsprechung zwischen den Bits der Register und den Interrupts, deren Pegel sie bestimmen, in einer Tabelle. 9 - Entsprechung zwischen den Prioritätsstufen und dem Zustand der Bits in den Registerpaaren IP, IPH und IPA, IPHA.

8XC51CB Mikrocontroller von INTEL

8XC51CB Mikrocontroller von INTEL

Interrupts mit niedriger Priorität können wiederum nur durch ein Ereignis mit höherer (aber nicht gleicher) Priorität unterbrochen werden. Dementsprechend kann ein Interrupt mit der höchsten Priorität nicht unterbrochen werden. Wenn der Prozessor gleichzeitig Anfragen für zwei oder mehr Interrupts mit derselben Priorität erhält, wird die Reihenfolge ihrer Verarbeitung durch eine spezielle Interrupt-Flag-Abfragesequenz bestimmt. Für 8xС51GB-Controller sieht es so aus:

8XC51CB Mikrocontroller von INTEL

Die externen Interrupts I NT0 und INT1 des 8xC51GB-Mikrocontrollers entsprechen vollständig ähnlichen Interrupts aller Mikroschaltungen der MSS51-Familie und können je nach Zustand der ITO- und IT1-Bits des TCON-Registers sowohl im Pegel als auch in der Differenz von 1 festgelegt werden auf 0.

Die externen Pins INT2 und INTZ können sowohl auf die positive als auch auf die negative Flanke des Signals reagieren. Die Mikroschaltung verfügt über ein EXICON-Register (0С6Н), das die Bits IT2 und ITZ enthält, die die aktive Flanke des Signals an den Pins P5.2 (INT2) und P5.3 (INTТЗ) bestimmen.

Wenn das ITn-Bit auf 0 gesetzt ist, wird der Interrupt bei einer negativen Flanke ausgelöst, bei ITn = 1 bei einer positiven Flanke. Externe Ereignisse INT4 – INT6 werden nur bei einer positiven Flanke an den Ausgängen P5.4(INT4) – P5.6(INT6) fixiert.

Alle externen Interrupts erzeugen entsprechende durch die Hardware einstellbare Flags. Bei INTO-Ereignissen sind INT1 die Bits 1E0 und IE1 des TCON-Registers. Die IE2-IE6-Flags befinden sich im EXICON-Register. Sie werden von der Hardware zurückgesetzt, sobald der Prozessor in die entsprechende Interrupt-Verarbeitungsroutine wechselt.

Während des Maschinenzyklus werden externe Interrupt-Pins nur einmal abgefragt. Damit ein Interrupt registriert werden kann, muss daher die Dauer seines aktiven Pegels die Dauer eines Maschinenzyklus (12 Taktzyklen) überschreiten. Der Zweck der EXICON-Registerbits ist in der Tabelle angegeben. 10.

8XC51CB Mikrocontroller von INTEL

ERWEITERTER SERIELLER ANSCHLUSS

Der Enhanced Serial Port (SEP) verfügt über die Hardware zur Implementierung des 1C-Bus, dem De-facto-Standard für serielle Kommunikation. SEP ermöglicht den Betrieb in vier verschiedenen Modi und verfügt über drei verschiedene Taktquellen. Für seine Bedürfnisse sind zwei Ausgänge der Mikroschaltung beteiligt: ​​P4.1 – Dateneingabe/-ausgabe und P4.0 – zur Ausgabe des Taktsignals. Ein gesendetes oder empfangenes Paket besteht aus acht Datenbits. In diesem Fall werden acht Zyklen des SEP-Betriebs verwendet. Wenn keine empfangenen oder gesendeten Informationen vorliegen, sind das Taktsignal und die Daten inaktiv.

Drei SFR-Register sind SEP zugeordnet: SEPCON (0D7H), SEPDAT (0E7H) und SEPSTAT (0F7H). Sie werden nur byteweise angesprochen. Die Zuordnung der Bits in den SEPCON- und SEPSTAT-Registern ist in der Tabelle angegeben. 11 bzw. 12.

8XC51CB Mikrocontroller von INTEL

8XC51CB Mikrocontroller von INTEL

Auf Abb. Abbildung 2 zeigt die Unterscheidungsmerkmale der SEP-Betriebsmodi – die aktiven Pegel des Taktsignals und die zum Empfangen oder Senden verwendeten Flanken. Wie aus der Tabelle hervorgeht. In 11 wird der SEP-Betriebsmodus durch den Zustand der CLKPOL- und CLKPH-Bits im SEPCON-Register bestimmt.

8XC51CB Mikrocontroller von INTEL

Um ein Byte zu empfangen oder zu senden, muss der Benutzer den Port-Betriebsmodus (CLKPOL- und CLKPH-Bits) und die Baudrate (SEPS1 und SEPS0) auswählen und das SEPE-Bit auf 1 setzen. Der Übertragungsvorgang beginnt unmittelbar nach dem Laden des Bytes in den SEPDATA-Register. Ein Empfang wird durch Setzen des SEPREN-Bits auf 1 eingeleitet, wenn das SEPDATA-Register leer ist und keine Übertragung stattfindet. Nach dem Empfang von acht Bits wird SEPREN von der Hardware zurückgesetzt. Der Abschluss eines Empfangs oder einer Übertragung führt dazu, dass das SEPIF-Bit auf 1 gesetzt wird. Das Zurücksetzen ist nur per Software möglich.

Wenn der Benutzer beim Senden oder Empfangen versucht, in das SEPDATA-Register zu schreiben (oder daraus zu lesen), wird das entsprechende Fehlerbit gesetzt. Das Flag SEPFWR wird gesetzt, wenn dies während einer Byteübertragung versucht wird, und SEPFRD wird während eines Empfangs gesetzt. Mit dem Setzen dieser Bits sind keine Interrupts verbunden, sodass der Benutzer ihren Status unabhängig steuern muss. Das Zurücksetzen dieser Flags kann natürlich nur programmgesteuert erfolgen.

HARDWARE-TIMER

Der Hardware-Watchdog-Timer (HWDT) setzt den Mikrocontroller bei einem Überlauf zurück, was ein Mittel zur Bekämpfung eines Systemabsturzes (Programmschleife) darstellt. Der Timer/Zähler des PCA-Moduls 4 kann auch so konfiguriert werden, dass er eine ähnliche Funktion ausführt, aber eine solche Verwendung schränkt die Möglichkeiten des Benutzers ein, und daher erschien in 8xC51GB ein unabhängiger WDT, der keinen Einsatz von PCA erfordert.

Der Hardware-Watchdog besteht aus einem 14-Bit-Zähler, der bei jedem Maschinenzyklus erhöht wird, und dem SFR-Register WDTRST (0A6H). Der Timer ist immer aktiv und erhöht den Zähler kontinuierlich, während die Uhr läuft. Es gibt keine Möglichkeit, den Timer zu stoppen. Wenn das Benutzerprogramm keine Informationen in WDTRST schreibt, generiert der HWDT alle 16 Maschinenzyklen ein RESET-Signal, das den Mikrocontroller zurücksetzt. Dadurch wird der Zähler zurückgesetzt. Um den Betrieb des HWDT zu verhindern, muss das Benutzerprogramm mit einem Intervall von mindestens 384 Maschinenzyklonen nacheinander zwei Bytes in das WDTRST-Register eingeben – 16EH und 383A01H. Beachten Sie, dass Sie in WDTRST nur Informationen schreiben können, es gibt keine Möglichkeit, deren Inhalt zu lesen.

Es wird nicht empfohlen, den besagten Neustart des Watchdog-Timers mithilfe einer Interrupt-Serviceroutine von einem der Timer/Zähler durchzuführen, da Interrupts auch dann verarbeitet werden können, wenn das Hauptprogramm hängt. Watchdog-Reset-Befehle lassen sich am besten in einem Schleifencode platzieren, dessen Wiederholungsperiode kürzer ist als die Auslösezeit des HWDT.

8XC51CB Mikrocontroller von INTEL

Wenn Sie den 8xC51GB in den Micro-Power-Modus versetzen, werden die interne Uhr und HWDT gestoppt. Das Entfernen des Controllers aus dem Micro-Power-Modus kann wie bei allen Vorgängern auf zwei Arten erfolgen: durch Zurücksetzen oder durch Aufrufen eines externen Interrupts, der aktiviert wird, bevor der 8xC51GB in den genannten Modus geschaltet wird. Im ersten Fall wird der HWDT zurückgesetzt, im zweiten Fall wird beim Start des Taktgenerators der Inhalt des HWDT-Zählers weiter erhöht. Da jedoch für einen stabilen Start des Taktgenerators eine Zeit von etwa zwei Dutzend seiner Perioden erforderlich ist, empfiehlt es sich, die Dauer des externen Interrupt-Impulses, der den Controller aus dem Mikroverbrauchsmodus bringt, nicht kürzer zu machen als die genannte Zeit. Der Interrupt-Handler beginnt mit der Ausführung erst, wenn der externe Interrupt-Signalpegel auf 1 geht und sich die Generierungsfrequenz stabilisiert. Gleichzeitig beginnt die Inkrementierung des HWDT-Zählers, d. h. solange das Interrupt-Signal einen Nullpegel hat, funktioniert der HWDT nicht.

Im XX-Modus ist der Controller-Taktgenerator nicht deaktiviert. Infolgedessen erhöht sich der Inhalt des HWDT-Zählers kontinuierlich. Um ein Zurücksetzen zu verhindern, muss ein Timer-Interrupt verwendet werden, der diesen Modus verlässt, den Watchdog-Timer-Zähler zurücksetzt und in den Leerlaufmodus zurückkehrt.

Der folgende Codeausschnitt verwendet den T/CO-Interrupt, um den HWDT regelmäßig zurückzusetzen. Wie oben erwähnt, ist die Verwendung eines solchen Interrupts zwar nicht der beste Ort, um den Zähler zurückzusetzen, und es ist besser, eine solche Prozedur in einen periodisch ausgeführten Teil des Programms einzubauen – das Abfragen der Tastatur oder das Anzeigen von Informationen. Daher sollte das obige Fragment als Demonstrationsbeispiel betrachtet werden und nicht als Unterprogramm, das ohne Änderungen in Programmen verwendet werden sollte.

UHRFEHLERERKENNUNG

Die OFD-Schaltung (Oscillator Failure Detection) dient dazu, den Mikrocontroller zurückzusetzen, wenn die Oszillatorfrequenz unter einen Spezifikationsgrenzwert fällt. Wenn sich die Taktfrequenz nach dem Zurücksetzen nicht ändert (bzw. nicht auf einen akzeptablen Wert ansteigt), bleibt der Controller in diesem Zustand. Beachten Sie, dass ein Überschreiten der Frequenz über den eingestellten Grenzwert nicht zu dessen Zurücksetzung führt.

Der OFD-Schaltkreis schaltet sich nach einem Reset oder wenn der Controller den Mikrobedarfsmodus verlässt, immer ein. Um es zu deaktivieren, schreiben Sie 0E1H und 01EH nacheinander in das OSCR-Register (0A5H). Dies muss insbesondere vor dem Wechsel in den Mikroverbrauchsmodus erfolgen, da dort der Taktgenerator ausgeschaltet ist. Nur durch Zurücksetzen oder Verlassen des Mikroverbrauchsmodus durch einen externen Interrupt kann die Schaltung wieder funktionsfähig gemacht werden.

Der Zustand der OFD-Schaltung kann durch Lesen des OSCR-Registers ermittelt werden. Bei OSCR=0FFH ist die Fehlererkennung aktiviert, bei OSCR=0FEH ist sie deaktiviert.

FAZIT

Damit haben wir die Überprüfung der Funktionen der von Intel entwickelten und hergestellten Acht-Bit-Mikrocontroller der MCS51-Familie abgeschlossen. Sie erwiesen sich als so erfolgreich, dass die Replikation vieler von ihnen (mit einigen technologischen Verbesserungen) bis heute fortgesetzt wird. Die stetige Nachfrage nach diesen Controllern wird durch die Tatsache bestimmt, dass sich Hunderttausende Entwickler an sie gewöhnt haben, eine riesige Menge an Software entwickelt und eine Flotte von Debugging- und Cross-Tools erworben haben. In vielen Fällen erfordert eine Neuentwicklung keinen Austausch des Mikrocontrollers durch etwas völlig Neues. Daher ist es sinnvoller, sie mit bereits vertrauten und unterstützenden Tools durchzuführen, als Aufwand und Geld für den Wechsel zu einem anderen aufzuwenden Elementbasis.

Aus diesem Grund hat Intel seine Controller regelmäßig verbessert, um das Spektrum der mit ihrem Einsatz gelösten Aufgaben zu erweitern. Darüber hinaus schlossen sich dieser Verbesserung auch Firmen an, die keinen Bezug zur ursprünglichen Entwicklung hatten. So werden heute mit dieser Familie kompatible Mikrocontroller von Philips, Siemens, Dallas Semiconductor, Atmel, OKI und einigen weniger bekannten Herstellern hergestellt, darunter eine Reihe von Unternehmen in der ehemaligen UdSSR. Alle Controller verfügen in der Regel über den gleichen Befehlssatz und die gleiche Grundarchitektur, sind in der „Pinbelegung“ kompatibel und verfügen über ähnliche Programmieralgorithmen.

Es gibt jedoch erhebliche Unterschiede im Satz zusätzlicher Register und in der Hardware. So verfügen Mikrocontroller von Dallas Semiconductor über zwei DPTR-Register und einen Mechanismus zu deren Umschaltung, Philips-Produkte verfügen über einen ADC mit erhöhter Kapazität, Siemens-Controller verfügen häufig über externen Speicher auf dem Chip, der über MOVX-Befehle angesprochen wird usw.

Literatur

  1. Frunze A., Khorkin S. Einzelchip-Mikrocomputer der 8051-Familie. - Radio. 1994. Nr. 8, S. 18, 19; Nr. 9, S. 13-15: Nr. 10. S. 16-19; Nr. 11. S. 18-21; Nr. 12. S. 25-27; 1995. Nr. 1, S. 23-25; Nr. 2, S. 22, 23.
  2. Frunze A., Khorkin S. Einzelchip-Mikrocomputer der 8052-Familie. - Radio, 1995. Nr. 2, S. 19-23; Nr. 3. Mit. 28-31.
  3. Frunze Alexey und Alexander. Einzelchip-Mikrocomputer. - Radio. 1995. Nr. 4, S. 27-29: Nr. 5. S. 27-29.
  4. Frunze A. Mikrocontroller 8xC51 Fx, 8xL51Fx von Intel. - Radio. 1997, Nr. 7, S. 27-29: Nr. 8. S. 30. 31.

Autor: A. Frunze, Moskau

Siehe andere Artikel Abschnitt Mikrocontroller.

Lesen und Schreiben nützlich Kommentare zu diesem Artikel.

<< Zurück

Neueste Nachrichten aus Wissenschaft und Technik, neue Elektronik:

Eine neue Möglichkeit, optische Signale zu steuern und zu manipulieren 05.05.2024

Die moderne Welt der Wissenschaft und Technik entwickelt sich rasant und jeden Tag tauchen neue Methoden und Technologien auf, die uns in verschiedenen Bereichen neue Perspektiven eröffnen. Eine dieser Innovationen ist die Entwicklung einer neuen Methode zur Steuerung optischer Signale durch deutsche Wissenschaftler, die zu erheblichen Fortschritten auf dem Gebiet der Photonik führen könnte. Neuere Forschungen haben es deutschen Wissenschaftlern ermöglicht, eine abstimmbare Wellenplatte in einem Wellenleiter aus Quarzglas zu schaffen. Dieses auf der Verwendung einer Flüssigkristallschicht basierende Verfahren ermöglicht es, die Polarisation des durch einen Wellenleiter fließenden Lichts effektiv zu ändern. Dieser technologische Durchbruch eröffnet neue Perspektiven für die Entwicklung kompakter und effizienter photonischer Geräte, die große Datenmengen verarbeiten können. Die durch die neue Methode bereitgestellte elektrooptische Steuerung der Polarisation könnte die Grundlage für eine neue Klasse integrierter photonischer Geräte bilden. Dies eröffnet große Chancen für ... >>

Primium Seneca-Tastatur 05.05.2024

Tastaturen sind ein fester Bestandteil unserer täglichen Arbeit am Computer. Eines der Hauptprobleme für Nutzer ist jedoch der Lärm, insbesondere bei Premium-Modellen. Doch mit der neuen Seneca-Tastatur von Norbauer & Co könnte sich das ändern. Seneca ist nicht nur eine Tastatur, es ist das Ergebnis von fünf Jahren Entwicklungsarbeit, um das perfekte Gerät zu schaffen. Jeder Aspekt dieser Tastatur, von den akustischen Eigenschaften bis hin zu den mechanischen Eigenschaften, wurde sorgfältig durchdacht und ausbalanciert. Eines der Hauptmerkmale von Seneca sind seine leisen Stabilisatoren, die das bei vielen Tastaturen auftretende Geräuschproblem lösen. Darüber hinaus unterstützt die Tastatur verschiedene Tastenbreiten, sodass sie für jeden Benutzer bequem ist. Obwohl Seneca noch nicht käuflich zu erwerben ist, ist die Veröffentlichung für Spätsommer geplant. Seneca von Norbauer & Co setzt neue Maßstäbe im Tastaturdesign. Ihr ... >>

Das höchste astronomische Observatorium der Welt wurde eröffnet 04.05.2024

Die Erforschung des Weltraums und seiner Geheimnisse ist eine Aufgabe, die die Aufmerksamkeit von Astronomen aus aller Welt auf sich zieht. In der frischen Luft der hohen Berge, fernab der Lichtverschmutzung der Städte, enthüllen die Sterne und Planeten ihre Geheimnisse mit größerer Klarheit. Mit der Eröffnung des höchsten astronomischen Observatoriums der Welt – dem Atacama-Observatorium der Universität Tokio – wird eine neue Seite in der Geschichte der Astronomie aufgeschlagen. Das Atacama-Observatorium auf einer Höhe von 5640 Metern über dem Meeresspiegel eröffnet Astronomen neue Möglichkeiten bei der Erforschung des Weltraums. Dieser Standort ist zum höchstgelegenen Standort für ein bodengestütztes Teleskop geworden und bietet Forschern ein einzigartiges Werkzeug zur Untersuchung von Infrarotwellen im Universum. Obwohl der Standort in großer Höhe für einen klareren Himmel und weniger Störungen durch die Atmosphäre sorgt, stellt der Bau eines Observatoriums auf einem hohen Berg enorme Schwierigkeiten und Herausforderungen dar. Doch trotz der Schwierigkeiten eröffnet das neue Observatorium den Astronomen vielfältige Forschungsperspektiven. ... >>

Zufällige Neuigkeiten aus dem Archiv

Melissa für Astronauten 20.01.2010

Die von Ingenieuren und Biologen der Europäischen Weltraumorganisation geschaffene Installation "MELISSA" (eine Abkürzung für englische Wörter, die mit "mikroökologisches alternatives Lebenserhaltungssystem" übersetzt werden) ist für Flüge in den Weltraum bestimmt. Die Installation simuliert die in natürlichen Gewässern ablaufenden Prozesse und sorgt für den Abbau von Abfallprodukten zu einfachen Verbindungen, die dann zur Bildung neuer organischer Stoffe verwendet werden.

Regenerationssysteme haben auf der Raumstation Mir funktioniert, sie funktionieren auf der Internationalen Raumstation, aber sie können nur Luft und Wasser regenerieren. "MELISSA" wird es Kosmonauten auf einem langen Flug oder auf einer außerirdischen Basis ermöglichen, festen Hausmüll zu verwenden.

Eine Gemeinschaft aus Bakterien und Blaualgen verfeinert die durch Mahlen von festen und flüssigen Abfällen gewonnene Aufschlämmung, wonach die resultierende Nährlösung in das Hydrokulturfach gelangt. Es gibt angebaute Pflanzen, die als Nahrung für Astronauten verwendet werden: Weizen, Tomaten, Kartoffeln, Sojabohnen, Reis, Spinat, Salat und Zwiebeln. Der von ihnen produzierte Sauerstoff wird an die Luft abgegeben.

Einzelne Komponenten dieser Kläranlage werden bereits an der französischen Antarktisstation getestet, wo es verboten ist, irgendwelche Abfälle in die Umwelt freizusetzen.

Weitere interessante Neuigkeiten:

▪ Photonische Chips Infinera ePIC-500 und oPIC-100

▪ Tragbare Kamera mit Unterstützung für SD-Speicherkarten

▪ Männliche und weibliche Gehirne arbeiten unterschiedlich

▪ Das optische Laufwerk Pioneer BDR-S07J brennt BDXL-Discs

▪ Geräumiger und langlebiger Graphen-Ionistor

News-Feed von Wissenschaft und Technologie, neue Elektronik

 

Interessante Materialien der Freien Technischen Bibliothek:

▪ Abschnitt der Website Tipps für Funkamateure. Artikelauswahl

▪ Artikel Fermats letzter Satz. Geschichte und Wesen der wissenschaftlichen Entdeckung

▪ Artikel Welche Winde bringen welches Wetter? Ausführliche Antwort

▪ Artikel Umgang mit verbleitem Benzin. Standardanweisung zum Arbeitsschutz

▪ Artikel Ein Dreikanal-Farb- und Musikgerät mit der Möglichkeit, die Anzahl der Lampen in jeder Girlande zu erhöhen. Enzyklopädie der Funkelektronik und Elektrotechnik

▪ Artikel Doppler-Radarsensor für sich bewegende Objekte DMS-4. Enzyklopädie der Funkelektronik und Elektrotechnik

Hinterlasse deinen Kommentar zu diesem Artikel:

Name:


E-Mail optional):


Kommentar:





Alle Sprachen dieser Seite

Startseite | Bibliothek | Artikel | Sitemap | Site-Überprüfungen

www.diagramm.com.ua

www.diagramm.com.ua
2000-2024