GliederungAllgemein zu der seriellen Schnittstelle  Was ist die serielle Schnittstelle?  Elektrische Eigenschaften  Übertr...
Allgemein zu der seriellen Schnittstelle•   Die serielle Schnittstelle ist unter folgenden Bezeichnungen genormt:         ...
•   Diente ursprünglich der seriellen Datenübertragung zwischen einer DEE und DÜE.                 Serielle Datenübertragu...
Elektrische Eigenschaften•   Der Datenverkehr zwischen Terminal und Modem geschieht über    Daten-, Takt-, Melde- und Quit...
ÜbertragungsartenSynchrone Übertragung•   Wird zusätzlich ein Taktsignal übertragen•   Übertragung langer Datenblöcke•   E...
Asynchrone Übertragung•   es wird kein Taktsignal übertragen    Sender und Empfänger verwenden eigenen Takt•   es werden n...
Serielle Schnittstelle in 80C53780C537 besitzt zwei serielle Schnittstelle S0 und S1:• Duplex-Betrieb• variable Baudrate• ...
Serielle Schnittstelle 0•   Unterstützt 4 Betriebsarten:          Mode 0: Synchroner Betrieb, 8-Bit          Mode 1: Async...
Serielle Schnittstelle 1•   Unterstützt 2 Betriebsarten:          Mode A: Asynchroner Betrieb, 9-Bit          Mode B: Asyn...
Special Function Register für die    seriellen Schnittstellen S0 und S1• Serial Data Buffer       S0BUF       S1BUF• Seria...
Serial Data Buffer S0BUF/S1BUFSenden und Empfangen erfolgt über die selbe Adresse im SFR-Bereich:           S0BUF (99h)   ...
Serial Control Register S0CON/S1CONDie Betriebsarten und die Arbeitsweise der seriellen Schnittstelle werden überSF-Regist...
Serial Control Register S0CON          SM0         SM1         SM20           REN0           TB80           RB80          ...
Serial Control Register S1CON          SM              SM21           REN1           TB81           RB81              TI1 ...
Reload-Register S1RELS1REL (9Dh) dient der Baudrateerzeugung für die serielle Schnittstelle 1.Beispiel1:Gefordert ist eine...
Reload-Register S1RELH+S1RELAb der „CA“ Version des 80C537 ist der Timer 10 Bit breit und zu S1REL können noch 2Bits von S...
BD und SMODBD (Bitadresse DFh) der sich im SFR ADCON0 (Bitadressierbar) befindet undSMOD der im SFR PCON (Byteadressierbar...
Reload-Register S0RELH+S0RELLBaudrateerzeugung der serielle Schnittstelle 0.                                              ...
ENDEVielen Dank für die Aufmerksamkeit!
Die serielle Schnittstelle
Nächste SlideShare
Wird geladen in …5
×

Die serielle Schnittstelle

1.733 Aufrufe

Veröffentlicht am

Die serielle Schnittstelle in 8051 Mikrocontrollern

0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.733
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
27
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • Guten morgen, Ich und Herr Koch erzählen heute über die serielle Schnittstelle.
  • Ich möchte was zu der Gliederung sagen: Zuerst erzähle ich was allgemeines zu der seriellen Schnittstelle Was ist ein serielle Schnittstelle? Welche elektrische Eigenschaften muss ein Kabel haben? Und welche Übertragungsarten gibt es. Dann komme ich zu der seriellen Schnittstelle in 80C537 Da beim 80C537 zwei Schnittstellen gibt, sage ich was zu S0 und S1. Danach stellt Herr Koch die Special Funktion Register vor. Dort erzählt er über die Steuerung der seriellen Schnittstelle. Und darüber wie man die Baudrate erzeugt.
  • Die serielle Schnittstelle ist unter folgenden Bezeichnungen genormt: RS-232-C ist die amerikanische Bezeichnung und eine Norm der EIA Die EIA (Electronic Industries Alliance in Arlington, Virginia, USA) V.24 Bezeichnung der Internationalen Fernmeldekomitee CCITT dt. Internationaler Beratender Ausschuss für den Telegrafen- und Telefondienst) Und 66020 ist die deutsche Bezeichnung Das Deutsche Institut für Normung
  • RS-232-C diente ursprünglich der seriellen Datenübertragung zwischen einer Datenendeinrichtung (das kann z.B. ein Terminal sein) und einer Datenübertragungseinrichtug (z.B. ein Modem) Serielle Datenübertragung heißt, dass die Bits nacheinander auf einer Leitung übertragen werden. Da die Daten im Computersystem in paralleler Form vorliegen, benötigt man zum Senden serieller Daten einen Parallel-Seriell-Wandler. Diese Aufgabe übernimmt intelligente Snittstellenbaustein UART (Universal Asyncronus Receiver Transmitter) Verbindet man zwei Datenendgeräte muss ein Nullmodem verwendet werden. Nullmodem ist ein Kabel deren Leitungen gekreuzt sind.
  • Der Datenverkehr zwischen Terminal und Modem geschieht über Daten-, Takt-, Melde- und Quittungssignale. Wobei das Letzte nur in Verbindung mit einem Modem verwendet wird. Die elektrische Verbindung erfolgt über ein max. 25poliges Kabel. Dabei werden die Daten über TD-Leitung gesendet und über RD-Leitung empfangen In Der CCITT sind die Leitungspegel festgelegt: Für HIGH-Pegel sind +3 V … +25 V und für LOW-Pegel -3 V … -25 V festgelegt. Bei den meisten Anwendungen Beschränkt man sich aber auf die Spannungen zwischen +12 V und -12 V. Die Datenleitungen (TD und RD) verwenden negative Logik, Steuer- und Quittungsleitungen positive Logik.
  • Es gibt synchrone und asynchrone Übertragung Bei der synchronen Übertragung wird zusätzlich zu den Daten ein Taktsignal übertragen Das erlaubt die Übertragung langer Datenblöcke Nachteilig ist der erhöhte Aufwand für die Taktleitung Um eine Leitung zu sparen, kann der Takt auch zusätzlich auf der Datenleitung übertragen werden Dabei werden Takt und Daten mit einer ExOR-Schaltung verknüpft.
  • Bei der asynchronen Übertragung wird kein Taktsignal übertragen, der Sender und Empfänger verwenden eigenen Takt Da es nicht exakt möglich beide Takte auf gleicher Frequenz zu halten werden nur kurze Datenblöcke übertragen. Für die fehlerfreie Übertragung ist es wichtig, dass beim Sender und Empfänger das gleiche Übertragungsprotokoll eingestellt ist. Dazu gehört die gleiche Schrittgeschwindigkeit (Baudrate), jede Übertragung beginnt mit einem Startbit, dann kommen 8 oder 9 Datenbits, darauf folgt der Paritätsbit und 1 oder 2 Stoppbits.
  • 80C537 besitzt zwei serielle Schnittstelle S0 und S1 Beide Schnittstellen arbeiten in Duplex-Betrieb (können gleichzeitig Senden und Empfangen) Die Baudrate sind variabel einstellbar Man kann 8 o. 9 Bits übertragen Beide Schnittstellen erzeugen keine Modemsignale Jeder Kanal hat eigenen Baudrategenerator
  • Die serielle Schnittstelle S0 unterstützt 4 Betriebsarten: Mode 0: ist der Synchrone Betrieb Mode 1: ist der Asynchrone Betrieb mit der 8-Bit Übertragung Mode 2: ist der Asynchrone Betrieb mit der 9-Bit Übertragung Mode 3: ist ebenfalls der Asynchrone Betrieb mit der 9-Bit Übertragun Gesendet und Empfangen werden die Daten über den Serial-Data-Buffer Register S0BUF Die Steuerung der seriellen Schnittstelle 0 über den Serial-Control-Register S0CON
  • Die serielle Schnittstelle S1 unterstützt nur 2 Betriebsarten: Mode A: ist der Asynchroner Betrieb mit der 9-Bit Übertragung Mode B: ist der Asynchroner Betrieb mit der 8-Bit Übertragung Gesendet und Empfangen werden die Daten über den Serial-Data-Buffer Register S1BUF Die Steuerung der seriellen Schnittstelle 1 erfolgt über den Serial-Control-Register S1CON.
  • Serial Data Buffer ist der Datenregister S0BUF S1BUF Serial Control Register ist der Steuerregister S0CON S1CON Reload-Register ist der Reloadregister für die Baudrateerzeugung S0RELL (+S0RELH) S1REL (+S1RELH) A/D Control Register 0 (ADCON0) BD Power Control Register (PCON) SMOD
  • Das Senden und Empfangen erfolgen über dieselbe Adresse im SFR-Bereich: S0BUF (adr. 99h) für die serielle Schnittstelle 0 und S1BUF (adr. 9Ch) für die serielle Schnittstelle 1 Im Schreibzyklus werden die Daten in S0BUF/S1BUF geladen, damit wird die Übertragung gestartet. Im Lesezyklus werden die Daten aus dem S0BUF/S1BUF ausgelesen. Beim Empfang eines neuen Zeichens wird das alte überschieben.
  • Die Betriebsarten und die Arbeitsweise der seriellen Schnittstelle werden über Serial Control Register SCON eingestellt. S0CON mit der Adresse 98h ist der Serial Control Register für die serielle Schnittstelle 0. Der Register ist Bitadressierbar. S1CON mit der Adresse 9Bh ist der Serial Control Register für die serielle Schnittstelle 1. Nur Byteadressierbar
  • Serial Control Register S0CON ist der Steuerregister der seriellen Schnittstelle S0 Mit den Bits SM0 und SM1 wählt man einen der vier Mods. Bit SM2 ermöglicht in Mode 2 und 3 ( 9-Bit-Übertragung ) die Multiprozessor-Verbindung. In Mode 0 sollte SM20 gelöscht sein REN0 bedeutet Receiver Enable und ermöglicht seriellen Empfang, wenn gesetzt. Wird nur durch Software beeinflusst . TB80 und RB80 ist der Transmitter- bzw. Receiver-Bit 8, neunte Datenbit, wird in Mode 2 u. 3 übertragen bzw. empfangen. TI0 ist der Transmitter Interrupt -Request –Flipflop. Wird gesetzt in Mode 0 am Ende des achten Bits oder in den anderen Betriebsarten bei Beginn des Stoppbits. Muss durch Software gelöscht werden . RI0 ist der Receiver Interrupt -Request -Flipflop. Wird gesetzt in Mode 0 am Ende des achten Bits oder in den anderen Betriebsarten während des Stoppbits. Muss durch Software gelöscht werden
  • Serial Control Register S1CON ist der Steuerregister der seriellen Schnittstelle S1 Mit den Bit SM wählt man einen der beiden Mods. SM21 Ermöglicht Multiprozessor-Verbindung, in Mode A (9-Bit-Übertragung) REN1 bedeutet Receiver Enable und ermöglicht seriellen Empfang, wenn gesetzt. Wird nur durch Software beeinflusst TB8 1 und RB8 1 ist der Transmitter- bzw. Receiver-Bit 8, neunte Datenbit, wird in Mode A übertragen bzw. empfangen. TI1 ist der Transmitter Interrupt -Request -Flipflop. Wird gesetzt beim Beginn des Stoppbits. Muss durch Software gelöscht werden RI1 ist der Receiver Interrupt –Request -Flipflop. Wird gesetzt während des Stoppbits. Muss durch Software gelöscht werden
  • Der Reload-Register dient der Baudrateerzeugung für die serielle Schnittstelle 1 . Für die Baudratenerzeugung von S0 und S1 stehen Binärzähler - Timer zur Verfügung, die von der heruntergeteilten Oszillatorfrequenz getaktet werden. Der Timer wird gestartet, indem der gewünschte Wert in das Reload-Register S1REL (9Dh) geladen wird. Bei jedem Überlauf wird der Timer erneut mit dem von Programmierer ausgerechneten Relwert geladen. Mit dieser Formel kann man den Relwert ausrechnen. Beispiel 1 Beispiel 2. Das heißt das diese Baudrate lässt sich nicht einstellen Mit dem 8 Bit S1REL kann man min. 1465 Bd und max. 375kBd einstellen .
  • Ab der „CA“ Version des 80C537 ist der Timer 10 Bit breit und zu S1REL können noch 2 Bits von S1RELH einbezogen werden. Damit können nun 1200 Baud eingestellt werden. Mit der Formel kann man den Relwert ausrechnen
  • Die weiteren wichtigen Bits sind BD und SMOD BD (Bitadresse DFh) der sich im SFR ADCON0 befindet und SMOD der sich im SFR PCON unter der Byteadresse 87h zu erreichen ist, sind zwei Steuerbits die der Baudrateerzeugung für die serielle Schnittstelle 0 dienen.
  • Die Baudratenerzeugung für S0 ist etwas komplizierter als für S1. bei früheren Versionen kann entweder Timer 1 verwendet werden oder man muss sich auf einige wenige Baudraten beschränken. Die Baudratenerzeugung ist für Modus 0, 2 und 1/3 verschieden. Im Mode 0 gibt es nur eine Baudrate , nämlich Oszillatorfrequenz / 12. Im Mode 2 gibt es zwei Baudraten: Oszillatorfrequenz / 32 (wenn SMOD=1) und Oszillatorfrequenz / 64 (wenn SMOD=0) In Mode 1 und 3 sieht die Sache etwas anders aus: Ist der BD in ADCON0 gesetzt so wird der Baudrategenerator verwendet. Damit lassen sich bei Oszillatorfrequenz von 12 MHz Baudraten von 4800 Bd (SMOD=0) und 9600 Bd (SMOD=1) einstellen. Ist der BD gelöscht, erfolgt die Baudrateeinstellung über den Timer 1 Ab Version „CA“ kann der Baudrategenerator frei programmiert werden
  • Die serielle Schnittstelle

    1. 1. GliederungAllgemein zu der seriellen Schnittstelle Was ist die serielle Schnittstelle? Elektrische Eigenschaften ÜbertragungsartenSerielle Schnittstelle in 80C537 Serielle Schnittstelle 0 Serielle Schnittstelle 1Special Function Register Steuerung der serielle Schnittstelle Baudrateerzeugung
    2. 2. Allgemein zu der seriellen Schnittstelle• Die serielle Schnittstelle ist unter folgenden Bezeichnungen genormt: RS-232-C (Norm der EIA) V.24 (CCITT - Internationales Fernmeldekomitee) 66020 (Deutsche-Norm)
    3. 3. • Diente ursprünglich der seriellen Datenübertragung zwischen einer DEE und DÜE. Serielle Datenübertragung heißt, dass die Bits nacheinander auf einer Leitung übertragen werden.• Verbindet man zwei Datenendgeräte muss ein Nullmodem her!
    4. 4. Elektrische Eigenschaften• Der Datenverkehr zwischen Terminal und Modem geschieht über Daten-, Takt-, Melde- und Quittungssignale.• Die elektrische Verbindung erfolgt über ein max. 25poliges Kabel.• Die Daten werden über TD-Leitung (Transmit Data) gesendet und über RD-Leitung (Receive Data) empfangen .• Folgende Leitungspegel sind festgelegt: -pos. Pegel +3 V … +25 V -neg. Pegel -3 V … -25 V Bei den meisten Anwendungen Beschränkt man sich auf die Spannungen zwischen +12 V und -12 V.• Die Datenleitungen (TD und RD) verwenden negative Logik, Steuer- und Quittungsleitungen positive Logik.
    5. 5. ÜbertragungsartenSynchrone Übertragung• Wird zusätzlich ein Taktsignal übertragen• Übertragung langer Datenblöcke• Erhöhte Aufwand für die TaktleitungUm eine Leitung zu sparen, kann der Takt auch zusätzlich auf der Datenleitungübertragen werden:
    6. 6. Asynchrone Übertragung• es wird kein Taktsignal übertragen Sender und Empfänger verwenden eigenen Takt• es werden nur kurze Datenblöcke übertragenBeim Sender und Empfänger muss das gleiche Übertragungsprotokoll eingestellt werden:• gleiche Schrittgeschwindigkeit• Startbit• 8 oder 9 Datenbits• Paritybit• 1 oder 2 Stoppbits
    7. 7. Serielle Schnittstelle in 80C53780C537 besitzt zwei serielle Schnittstelle S0 und S1:• Duplex-Betrieb• variable Baudrate• 8 oder 9 Bit Übertragung• erzeugen keine Modemsteuersignale• jeder Kanal hat eigenen Baudrategenerator
    8. 8. Serielle Schnittstelle 0• Unterstützt 4 Betriebsarten: Mode 0: Synchroner Betrieb, 8-Bit Mode 1: Asynchroner Betrieb, 8-Bit Mode 2: Asynchroner Betrieb, 9-Bit Mode 3: Asynchroner Betrieb, 9-Bit• Senden und Empfangen erfolgt über das SFR S0BUF• Die Steuerung erfolgt über das SF-Register S0CON
    9. 9. Serielle Schnittstelle 1• Unterstützt 2 Betriebsarten: Mode A: Asynchroner Betrieb, 9-Bit Mode B: Asynchroner Betrieb, 8-Bit• Senden und Empfangen erfolgt über das SFR S1BUF• Die Steuerung erfolgt über das SF-Register S1CON
    10. 10. Special Function Register für die seriellen Schnittstellen S0 und S1• Serial Data Buffer S0BUF S1BUF• Serial Control Register S0CON S1CON• Reload-Register S0RELL (+S0RELH) S1REL (+S1RELH)• A/D Control Register 0 (ADCON0) BD• Power Control Register (PCON) SMOD
    11. 11. Serial Data Buffer S0BUF/S1BUFSenden und Empfangen erfolgt über die selbe Adresse im SFR-Bereich: S0BUF (99h) S1BUF (9Ch) für die serielle Schnittstelle 0 für die serielle Schnittstelle 1
    12. 12. Serial Control Register S0CON/S1CONDie Betriebsarten und die Arbeitsweise der seriellen Schnittstelle werden überSF-Register SCON eingestellt. S0CON (98h) Serial Control Register für die serielle Schnittstelle 0 SM0 SM1 SM20 REN0 TB80 RB80 TI0 RI0 9Fh 9Eh 9Dh 9Ch 9Bh 9Ah 99h 98h S1CON (9Bh) Serial Control Register für die serielle Schnittstelle 1 SM SM21 REN1 TB81 B81 TI1 RI1
    13. 13. Serial Control Register S0CON SM0 SM1 SM20 REN0 TB80 RB80 TI0 RI0 SM0 SM1 Betriebsart (Mode) 0 0 Synchrone Übertragung, 8 Bit, Senden/Empfangen über RxD0, Taktausgabe über TxD0 0 1 UART 8-Bit: Startbit | S0BUF0 . . . S0BUF7 | Stoppbit 1 0 UART 9-Bit: Startbit | S0BUF0 . . . S0BUF7 | 9.Bit | Stoppbit 1 1 UART 9-Bit: Startbit | S0BUF0 . . . S0BUF7 | 9.Bit | Stoppbit SM20 Ermöglicht Multiprozessor -Verbindung, in Mode 2 und 3 ( 9-Bit-Übertragung ). In Mode 0 sollte SM20 gelöscht sein REN0 Receiver Enable, ermöglicht seriellen Empfang, wenn gesetzt. Wird nur durch Software beeinflusst TB8 Transmitter -Bit 8, neuntes Datenbit, wird nur bei Mode 2 und 3 übertragen 0 RB80 Receiver -Bit 8, neuntes empfangenes Datenbit bei Mode 2 und 3 TI Transmitter Interrupt -Request -Flipflop. Wird gesetzt in Mode 0 am Ende des achten Bits 0 oder in den anderen Betriebsarten bei Beginn des Stoppbits. Muss durch Software gelöscht werden RI Receiver Interrupt -Request -Flipflop. Wird gesetzt in Mode 0 am Ende des achten Bits oder 0 in den anderen Betriebsarten während des Stoppbits. Muss durch Software gelöscht werden
    14. 14. Serial Control Register S1CON SM SM21 REN1 TB81 RB81 TI1 RI1 SM Betriebsart (Mode) SM = 0 Mode A : UART 9-Bit: Startbit | S1BUF0 . . . S1BUF7 | 9. Bit | Stoppbit SM = 1 Mode B : UART 8-Bit: Startbit | S1BUF0 . . . S1BUF7 | Stoppbit SM2 Ermöglicht Multiprozessor-Verbindung, in Mode A (9-Bit-Übertragung) 1 REN Receiver Enable, ermöglicht seriellen Empfang, wenn gesetzt. 1 Wird nur durch Software beeinflusst TB8 Transmitter -Bit 8, neuntes Datenbit, wird bei Mode A übertragen 1 RB8 Receiver-Bit 8, neuntes empfangenes Datenbit bei Mode A 1 TI Transmitter Interrupt -Request -Flipflop. Wird gesetzt beim Beginn des Stoppbits. 1 Muss durch Software gelöscht werden RI Receiver Interrupt –Request -Flipflop. Wird gesetzt während des Stoppbits. 1 Muss durch Software gelöscht werden
    15. 15. Reload-Register S1RELS1REL (9Dh) dient der Baudrateerzeugung für die serielle Schnittstelle 1.Beispiel1:Gefordert ist eine Baudrate von 9600 Bdrelwert = 256 - 12 MHz/(32 • 9600) = 217d oder D9hBeispiel 2:Gefordert ist eine Baudrate von 1200 Bdrelwert = 256 - 12 MHz/(32 • 1200) = -56 Diese Baudrate lässt sich nicht einstellen Bei fOSZ = 12 MHz lassen sich 1,465 bis 375 kBd einstellen!
    16. 16. Reload-Register S1RELH+S1RELAb der „CA“ Version des 80C537 ist der Timer 10 Bit breit und zu S1REL können noch 2Bits von S1RELH einbezogen werden. Damit können nun 1200 Baud eingestellt werden. Beispiel: relwert = 1024 - 12 MHz/(32 • 1200) = 712d oder 2C8h oder 10 1100 1000b Bei fOSZ = 12 MHz lassen sich 366 Bd bis 375 kBd einstellen!
    17. 17. BD und SMODBD (Bitadresse DFh) der sich im SFR ADCON0 (Bitadressierbar) befindet undSMOD der im SFR PCON (Byteadressierbar) unter der Byteadresse 87h zu erreichenist, sind zwei Steuerbits die der Baudrateerzeugung für die serielle Schnittstelle 0 dienen. ADCON0 DB CLK ADEX BSY ADM MX2 MX1 MX0 PCON SMOD SMOD PDS IDLS SD GF1 GF0 PDE IDLE
    18. 18. Reload-Register S0RELH+S0RELLBaudrateerzeugung der serielle Schnittstelle 0. Freiprogrammierbarer Baudrategenerator ab Version „CA“.
    19. 19. ENDEVielen Dank für die Aufmerksamkeit!

    ×