1 / 22

C166-Core

C164CI - CAN-Schnittstelle. C166-Core. 16. 64 K ROM (C164 CI-8RM) or OTP (C164CI-8EM). Data. RAM. CPU. Dual Port. Instr./Data. Data. 2 KByte. 32. 16. PLL- Oscillator prog. Multiplier : 0.5; 1; 1.5; 2; 2.5; 3; 4; 5. Watchdog. PEC. External Instr./Data. 13 ext. IR. RTC.

hart
Download Presentation

C166-Core

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C164CI - CAN-Schnittstelle C166-Core 16 64 K ROM (C164 CI-8RM) or OTP (C164CI-8EM) Data RAM CPU Dual Port Instr./Data Data 2 KByte 32 16 PLL-Oscillator prog. Multiplier: 0.5; 1; 1.5; 2; 2.5; 3; 4; 5 Watchdog PEC External Instr./Data 13 ext. IR RTC P4.5/ CAN RxD Interrupt Controller Full-CAN Interface V2.0B active 16 Interrupt Bus Peripheral Data 16 P4.6/ CAN TxD XBUS (16-bit NON MUX Data / Addresses) 10-Bit ADC CAPCOM6 Unit for PWM Generation GPT1 Sync. Channel CAPCOM 2 USART External Bus 8/16 bit MUX only & XBUS Control T2 (SPI) Port 0 16 8-Channel 8-Channels ASC SSC Timer 13 T3 Timer 8 Timer 7 BRG BRG T4 1 Comp. Channel 3/6 CAPCOM Channels Port 3 Port 4 Port 5 Port 8 Port 1 6 8 9 16 4 Embedded Systems

  2. Controller Area Network - CAN • CAN ist ein Protokoll für die serielle Kommunikation, das verteilte Echtzeit-Aufgaben mit sehr hohen Sicherheitsanforderungen effektiv unterstützt. • CAN ist standardisiert • ISO-DIS 11898 (high speed applications) • ISO-DIS 11519-2 (low speed applications) Embedded Systems

  3. CAN - Merkmale • Geringe Kosten • Serieller BUS für 2-Draht-Leitungen • Hohe Stückzahlen der CAN-Bausteine im Kraftfahrzeug- (Automotive-) Sektor und in der Industrieelektronik. • Zuverlässigkeit • Ausgefeilte Mechanismen zur Fehlererkennung und -behandlung führen zu hoher Zuverlässigkeit der Übertragung.Beispiel: • 500 kbit/s, 25% BUS-Auslastung, 2000 Betriebsstunden pro Jahr.Resultat: Ein nicht entdeckter Fehler in 1000 Jahren! • Fehlerbehaftete Meldungen werden erkannt und wiederholt. • Jeder BUS-Knoten wird über einen Fehler informiert. • Geringe Empfindlichkeit gegenüber elektromagnetischen Einstreuungen. • Flexibilität • Knoten können sehr einfach ergänzt oder entfernt werden (plug & play). • Die Anzahl der Knoten ist durch das Protokoll nicht begrenzt. Embedded Systems

  4. CAN - Merkmale • Gute Echtzeit-Eigenschaften • Kurzer Umfang der Meldungen (messages): 0 bis 8 Bytes Daten / Message. • Kurze Latenzzeit zwischen Anforderung einer Übertragung und Start der Übertragung. • Priorisierung von Meldungen (Arbitration on Message Priority - AMP) • Multi Master Protokoll mit CSMA/CD. • Geschwindigkeit • maximale Datenrate beträgt 1 MBit/s bei 40m BUS-Länge und immer noch etwa 40 kBit/s bei 1000m BUS-Länge. • Multi-Master-Operationen • Jeder Knoten kann den BUS erhalten • Die BUS-Kommunikation wird durch fehlerhafte Knoten nicht verhindert • Fehlerhafte Knoten trennen sich selbst vom BUS ab. • Flexible Adressierungmechanismen • Meldungen können an einen oder mehere Knoten gesendet werden. • Alle Knoten empfangen simultan öffentliche Daten. Embedded Systems

  5. CAN: Typische Anwendung Embedded Systems

  6. CAL, CANopen (CiA) DeviceNet SDS (Honeywell) etc ... CAN (ISO 11898) Bosch Protokollschichten des CAN Process-Application Layer Application Layer 7 Logical Link Control Error detection, error handling; Control of data-flow; Acceptance filtering. Data Link Layer 2 Medium Access Control Bit-Stuffing, Framing, Arbitration Management Physical Signalling (Bit –coding, -timing, -synchron.) Physical Layer 1 Physical Medium Attachment (Transmitter/Receiver-Spec.) Medium Dependent Interface (Cable, Plug...) Embedded Systems

  7. Höhere Protokollschichten • CAN Application Layer (CAL) • Schicht-7 Standard definiert durch “CAN in Automation” (CiA) • Netzwerk-Management für Initialisierung, Überwachung und Konfiguration von Knoten in standardisierter Form • Berücksichtigt alle Aspekte für die Realisierung offener Kommunikation über CAN (sorgt für das Zusammenarbeiten herstellerspezifische Systeme) • Verfügbare Implementierungen von CAL vereinfachen dem Nutzer den Weg zu ausgefeilten “Controller Area Networks” • CANopen • Anwendung basierend auf CAL. • CANopen legt die Art der Kommunikation fest, ein Anwendungs- profil fixiert die Bedeutung bestimmter Meldungen (messages) für die betrachtete Anwendung. • Ziel: Austauschbarkeit der Subsysteme bestimmter Anwendungen. • Weiter höhere Protokollschichten (Standards): • Automotiv-Sektor: VOLCANO, OSEK • Industrial Automation: DeviceNet (ODVA), SDS (Honeywell) Embedded Systems

  8. CAL, CANopen (CiA) DeviceNet SDS (Honeywell) etc ... CAN (ISO 11898) Bosch Protokollschichten des CAN Process-Application Layer Application Layer 7 Medium Access Control Bit-Stuffing, Framing, Arbitration Data Link Layer 2 Logical Link Control Error detection, error handling; Control of data-flow; Acceptance filtering. Management Physical Signalling (Bit –coding, -timing, -synchron.) Physical Layer 1 Physical Medium Attachment (Transmitter/Receiver-Spec.) Medium Dependent Interface (Cable, Plug...) Embedded Systems

  9. Prinzipielle Eigenschaften von CAN • Asynchroner serieller BUS mit linearer BUS-Struktur und identischen Knoten (Multi-Master-BUS) • Es werden nicht Knoten adressiert - die Adressen sind Teile der Message und beziehen sich auf diese, genauso ist die Priorität eine Eigenschaft der Message • Zwei BUS-Zustände: dominant und rezessiv • die BUS-Anschaltung erfolgt nach dem "Wired-AND”-Mechanismus:dominante Bits (logisch 0) überschreiben rezessive Bits (logisch 1) • BUS-Zugriff mittels CSMA/CD mit NDA (Carrier Sense Multiple Access/ Collision Detection mit Non-Destructive Arbitration): • vor dem Senden wird getestet ob der BUS frei ist • jeder Sender testet ob der BUS-Pegel seinem Sendepegel entspricht • bei Widerspruch wird das Senden eingestellt und in den Empfangsmodus geschaltet Embedded Systems

  10. Prinzipielle Eigenschaften von CAN rezessiv NODE A dominant rezessiv NODE B dominant bus idle rezessiv CAN BUS dominant Knoten B sendet rezessiven Pegelliest aber dominanten Pegel zurück Knoten B verliert die Arbitrierungund schaltet sich auf Empfang Embedded Systems

  11. Typische Struktur von CAN-Knoten Node A Node B z.B. ABS z.B. EMS Application z.B. 80C166 z.B. C164CR oder C515C Host-Controller (weitere Knoten) z.B. SAE81C90 CAN-Controller CAN CAN-Transceiver CAN_H CAN-BUS UDiff CAN_L Embedded Systems

  12. Identifier Data Field (0..8 Bytes) CRC-Field CAN Datenrahmen (data frames) • Es gibt zwei Situationen der Kommunikation: • Ein Knoten sendet (’talker’), alle anderen Knoten empfangen (’listener’) • Knoten A fordert (von einem Knoten) etwas an und erhält die Antwort. • Im ’Talk’-Modus benutzten CAN-Knoten Datenrahmen. • Datenrahmen bestehen aus: • einem Identifier • den Daten, die übertragen werden sollen • und einer CRC-Prüfsumme. • Der Identifier spezifiziert den Inhalt der Nachricht (‘Fahrzeug-geschwindigkeit, ‘Öltemperatur’, usw.) und die Priorität der Nachricht. • Das Datenfeld enthält den zugehörigen Wert (’36 m/s’, ’110°C’, usw.). • Der Cyclic Redundancy Check ermöglicht es Übertragungsfehler zu erkennen. • Alle Knoten empfangen den Datenrahmen, jene die die Information nicht benötigen verwerfen sie. Embedded Systems

  13. Identifier CRC-Field Wie heiß ist das Öl? Node B (Öltemp.- Sensor) Remote Frame; Identifier ’Oel_temp' ~~~~~ ~~~~~ Node A 115°C 115 °C ! Data Frame; Identifier ’Oel_temp'; enthält angeforderte Information CAN Remote Frames • Um Informationen abzufragen benutzt CAN “Remote Frames” • Ein Remote Frame besteht aus dem Identifier und der CRC-Prüfsumme, er enthält keine Daten. • Der Identifier verweist auf die Information, die abgefragt werden soll (’Fahrzeuggeschwindigkeit', ’Öltemperatur', usw.) und die Priorität der Nachricht. • Jener Knoten, der über die angeforderte Information verfügt (z.B. der Sensor für die Öltemperatur) reagiert mit dem Senden des zugeordneten ‘Data Frame’ (gleicher Identifier, das Datenfeld enthält die gewünschte Information). Embedded Systems

  14. Standard CAN / Extended CAN • CAN Version 2.0A - Standard CAN: • Der Standard-Rahmen enthält einen Identifier mit 11 Bit Umfang. • Damit können 211 (=2048) unterschiedliche “Messages” adressiert werden. • CAN Version 2.0B (active) - Extended CAN: • Ein “Extended Frame” besitzt einen Identifier mit einer Länge von 29 Bit. • Damit können über 536 Millionen (229) unterschiedliche “Messages” adressiert werden. • CAN Version 2.0B (passive) : • Manche Standard-CAN-Knoten sind nicht in der Lage “Extended Frames” zu empfangen, aber sie tolerieren sie und ignorieren deren “Messages”. Sie empfangen keine Daten, produzieren aber auch keine Fehler. • Diese CAN-Knoten verwenden CAN Version 2.0A, werden aber auch als Knoten der Version 2.0B passiv bezeichnet. • Sie werden in Netzwerken benutzt, in denen sowohl mit “Standard Frames als auch mit “Extended Frames” gearbeitet wird. • Infineon C164CI: V2.0B active Embedded Systems

  15. Message Object 1 Message Object 2 Accep- tance Filtering Message Manage- ment CAN Bus . . low high Message Object n CPU load Host CPU Full-CAN Controller CAN-Contoller • CAN-Controllern führen autark die Verwaltung der Messages und ihre Qualifizierung (acceptance filtering) durch: Full-CAN-Controller • Es existieren mehrere Message-Objecte mit jeweils eigenem Identifier. • Nur wenn eine Message mit einem der vorgegebenen Identifiern empfangen wird, wird diese gespeichert und die Programmausführung der CPU unterbrochen. • Auf diese Weise läßt sich die Auslastung der CPU gering halten. Embedded Systems

  16. Eigenschaften des CAN-Moduls des C164CI • Die Eigenschaften sind vergleichbar mit dem verbreiteten CAN-Controller AN82527 • Erfüllt alle Forderungen von “CAN spec. V2.0B active”(Standard- und Extended-CAN) • Maximale CAN-Transferrate von 1 MBit/s • Full CAN Device: • 15 Message-Objekte mit eigenem Identifier und eigenen Status- und Control-Bits • Jedes Message-Objekt kann als Sende- oder Empfangsobjekt definiert werden. Embedded Systems

  17. Eigenschaften des CAN-Moduls des C164CI • Programmierbares Masken-Register für Acceptance-Filterung • Globale Maske für eintreffende Messages (Full-CAN-Objekte) • Zusätzliche Maske für Message-Objekt 15(Basis-CAN-Eigenschaft) • Basis-CAN-Eigenschaft (Message-Objekt 15) • Zwei Empfangspuffer • Eigenes globales Masken-Register zur Acceptance-Filterung • Verbindung zur CPU (C166-Core) • Das Modul wird über den chip-internen XBUS angeschlossen (16-Bit BUS-Breite) • Interrupts direkt zur CPU mit allen Möglichkeiten der Interruptbehandlung. • Zur Anbindung an den CAN-BUS ist lediglich die physikalische Pegelkonversion über einen Standard-CAN-Transceiver nötig. Embedded Systems

  18. Verbindung des C164CI zum CAN-BUS • Das CAN-Modul benutzt 2 Anschlüsse des Port 4 als Schnittstelle zu einen BUS-Transceiver (P4.5 - CAN_RxD, P4.6 - CAN_TxD). C164CI CAN-Bus Transceiver CAN_L CAN_H P4.5 Pa.b CAN_RxD Receive CAN_H VerbindungzurApplikation P4.6 Transmit CAN_TxD CAN_L Pc.d (Standby) z.B. P8.0 R(opt) Embedded Systems

  19. Global Mask 1 1 0 1 1 1 1 1 1 0 1 (Teil der CAN CONTROLLER General Registers) Arbitration Register 0 0 1 1 1 1 0 1 1 0 0 (LAR, Teil des Message Object) 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 0 d 0 0 0 0 0 d 0 0 1 1 Resultierende Gültige Identfier "d" = don't care a) b) CAN MESSAGES c) d) ACCEPTANCE FILTERING Anmerkung: Werden Datenrahmen von mehr als einem Message Object akzeptiert, so erfolgt die Speicherung in dem Objekt mit der niedrigsten Nummer. Falls „remote frames“ von mehr als einem Message Object akzeptiert werden, so werden die Daten des Objects mit der niedrigsten Nummer gesendet. Wegen der "don't care"-Bits werden auch Messages mit den Identifiern b)..d) akzeptiert. Embedded Systems

  20. Bitdauer Sync-Segm. Sync-Segm. TSeg1 TSeg2 1 Zeit- einheit Sample- Zeitpunkt Sende- Zeitpunkt Bit-Timing • Das Bit-Timing wird vom Systemtakt fPERIPHERAL abgeleitet und ist programmierbar bis zu einer Datenrate von 1 MBaud (@ f CPU 16 MHz) SFRcan Embedded Systems

  21. Register des CAN-Controllers SFRcan Embedded Systems

  22. Message Object SFRcan CAN-SW Embedded Systems

More Related