STM8S208 - “beCAN” Controller
Die beCAN Registerstruktur ist etwas komplex, da es direkt adressierbare und indirekt adressierbare Register gibt.
|
Direkt adressiert werden die folgenden, in der Liste dargestellten Register die jederzeit über fest zugeordnete Adressen ansprechbar sind. Diese Register erlauben den Zugriff auf Informationen die während des laufenden CAN-Betriebs von Bedeutung sind. In diesem Adressbereich befindet sich auch das Page Select Register das für die nachfolgenden, nicht direkt adressierbaren Register bzw. für die Mailboxen und Filterbänke die "Bank-Switch Adresse" beinhaltet. |
BeCAN Liste der direkt adressierbaren Register (Feste Adressen) | |||
Adressbereich : 0x00.5420h – 0x00.5427h (für STM8S208) | |||
Adresse |
Register Name |
Bezeichnung |
Inhalt |
0x00.5420h | CAN_MCR | Master Control Register | TTCM-ABOM-AWUM-NART-RFLM-TXFP-SLEEP-INRQ |
0x00.5421h | CAN_MSR | Master Status Register | RX-TX-WKUI-ERRI-SLAK-INAK |
0x00.5422h | CAN_TSR | Transmit Status Register | TXOK2-TXOK1-TXOK0-RQCP2-RQCP1-RQCP0 |
0x00.5423h | CAN_TPR | Transmit Priority Register | LOW2-LOW1-LOW0-TME2-TME1-TME0_CODE1_CODE0 |
0x00.5424h | CAN_RFR | Receive FIFO Register | RFOM-FOVR-FULL-FMP[1..0] |
0x00.5425h | CAN_IER | Interrupt Enable Register | WKUIE-FOVIE-FFIE-FMPIE-TMEIE |
0x00.5426h | CAN_DGR | Diagnostic Register | TXM2E-RX-SAMP-SLIM-LBIKM |
0x00.5427h | CAN_PSR | Page Select Register | PS[2..0] |
|
Alle weiteren Register bzw. Speicherbereiche (Mailboxes) werden über ein Paging-Verfahren in einen reservierten Adressbereich (0x00.5428h ... 0x00.5437h) eingeblendet. Dazu wird das oben beschriebene „Page Select Register“ verwendet das die Auswahl der zu aktivierenden „Page“ (Seite) ermöglicht. Die „Seite“ mit den Configuration/Diagnostik Registern (siehe links) wird durch den Wert 0x0000.0110h (Page 6) im „Page Select Register“, in den „Paging Adressbereich“eingeblendet. Die Register innerhalb der Configuration/Diagnostik „Page“ sind im wesentlichen für die Einstellung der CAN-Bus Funktionalität zuständig. Diese Einstellungen müssen üblicherweise nur bei der Initialisierung des CAN-Controllers nach einem Anlegen der Versorgungsspannung konfiguriert werden. Durch das „Paging“ und eine „Lock“-Funktion nach Verlassen des INIT Modes werden diese Register darüber hinaus gegen unabsichtliches Schreiben geschützt. Damit wird sichergestellt dass keine unvorhergesehenen Bus-Problem im Betrieb auftreten können. Details über die einzelnen Register im direkt als auch im indirekt adressierbaren Bereich werden im weiteren Verlauf dieses Dokuments beschrieben. |
BeCAN Liste der indirekt adressierbaren Register (Page 6: Adressen) | |||
Adressbereich : 0x00.5428h – 0x00.5437h (für STM8S208) | |||
Adresse |
Register Name |
Bezeichnung |
Inhalt |
0x00.5428h | CAN_ESR | Error Status Register | LEC[2..0], BOFF, EPVF, EWGF |
0x00.5429h | CAN_EIER | Error Interrupt Enable Register | ERRIE, LECIE, BOFIE, EPVIE, EWGIE |
0x00.542Ah | CAN_TECR | Transmit Error Counter Register | TXOK2-TXOK1-TXOK0-RQCP2-RQCP1-RQCP0 |
0x00.542Bh | CAN_RECR | Receive Error Counter Register | LOW2-LOW1-LOW0-TME2-TME1-TME0_CODE1_CODE0 |
0x00.542Ch | CAN_BTR1 | Bit Timing Register 1 | RFOM-FOVR-FULL-FMP[1..0] |
0x00.542Dh | CAN_BTR2 | Bit Timing Register 2 | WKUIE-FOVIE-FFIE-FMPIE-TMEIE |
0x00.542Eh | reserved | ||
0x00.542Fh | reserved | ||
0x00.5430h | CAN_FMR1 | Filter Mode Register 1 | FMxn für Filter Bänke 0 ... 3 |
0x00.5431h | CAN_FMR2 | Filter Mode Register 2 | FMxn für Filter Bänke 4 ... 5 |
0x00.5432h | CAN_FCR1 | Filter Configuration Register 1 | FACTn, FSCxn für Filter Bänke 0 und 1 |
0x00.5433h | CAN_FCR2 | Filter Configuration Register 2 | FACTn, FSCxn für Filter Bänke 2 und 3 |
0x00.5434h | CAN_FCR3 | Filter Configuration Register 3 | FACTn, FSCxn für Filter Bänke 4 und 5 |
0x00.5435h | reserved | ||
0x00.5436h | reserved | ||
0x00.5437h | reserved |
Die nachfolgende Liste zeigt die nötigen Einstellungen im Page Select Register, welches die Bits: PS0, PS1 und PS2 enthält.
Im nachfolgenden Bild sind die einzelnen Seiten, die eingeblendet werden können dargestellt. Durch das FIFO Prinzip der RX-Mailboxen ist für diese nur eine Page Select Adresse (Page 7) reserviert.
Der Inhalt der einzelnen Seiten („Pages“) wird in "Indirekte Register" genauer beschrieben.
BeCAN Page Select Liste (Paging Adressen) | |||||
Mailbox/Pages | Page (Seite) | PS2 | PS1 | PS0 | |
TX Mailbox 0 | Sende-Mailbox 0 | 0 | 0 | 0 | 0 |
TX Mailbox 1 | Sende-Mailbox 1 | 1 | 0 | 0 | 1 |
Filter Pages 0:1 | CAN-ID Filter 0 und 1 | 2 | 0 | 1 | 0 |
Filter Pages 2:3 | CAN-ID Filter 2 und 3 | 3 | 0 | 1 | 1 |
Filter Pages 4:5 | CAN-ID Filter 4 und 5 | 4 | 1 | 0 | 0 |
TX Mailbox 2 | Sende-Mailbox 2 | 5 | 1 | 0 | 1 |
Configuration/Diagnostics | „Register“ Auswahl | 6 | 1 | 1 | 0 |
RX Mailbox (FIFO) | Empfangs FIFO (3 Mailboxen) | 7 | 1 | 1 | 1 |
Dieses Dokument sowie dessen Inhalt, insbesondere Texte, Fotografien und Grafiken, unterliegt dem Copyright (© 2017) und sind nur mit einer schriftlicher Zustimmung des Autors, Dipl.Ing.(FH) Franz Henkel zur vollständigen oder auszugsweisen Weiterverwendung in Form einer gedruckten oder elektronischen Kopie oder Replikation bzw. einer vollständigen oder auszugsweisen Bereitstellung des Inhalts in schriftlicher oder elektronischer Form, zu verwenden.