Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

D 23.9.2009 Embedded Systems Seite 1 C166-Core Port 5 Port 3 CPU Dual Port RAM 2 KByte Interrupt Controller Watchdog Peripheral Data External Instr./Data.

Ähnliche Präsentationen


Präsentation zum Thema: "D 23.9.2009 Embedded Systems Seite 1 C166-Core Port 5 Port 3 CPU Dual Port RAM 2 KByte Interrupt Controller Watchdog Peripheral Data External Instr./Data."—  Präsentation transkript:

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

2 D Embedded Systems Seite 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 (high speed applications) –ISO-DIS (low speed applications)

3 D Embedded Systems Seite 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.

4 D Embedded Systems Seite 4 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. CAN - Merkmale 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. 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. Flexible Adressierungmechanismen –Meldungen können an einen oder mehere Knoten gesendet werden. –Alle Knoten empfangen simultan öffentliche Daten.

5 D Embedded Systems Seite 5 CAN: Typische Anwendung

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

7 D Embedded Systems Seite 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)

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

9 D Embedded Systems Seite 9 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 Prinzipielle Eigenschaften von CAN

10 D Embedded Systems Seite 10 NODE A NODE B rezessiv dominant rezessiv dominant bus idle CAN BUS rezessiv dominant Knoten B sendet rezessiven Pegel liest aber dominanten Pegel zurück Knoten B verliert die Arbitrierung und schaltet sich auf Empfang Prinzipielle Eigenschaften von CAN

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

12 D Embedded Systems Seite 12 Identifier CRC-Field Data Field (0..8 Bytes) 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. CAN Datenrahmen (data frames) –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.

13 D Embedded Systems Seite 13 Um Informationen abzufragen benutzt CAN Remote Frames –Ein Remote Frame besteht aus dem Identifier und der CRC- Prüfsumme, er enthält keine Daten. CAN Remote Frames IdentifierCRC-Field –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). Data Frame; Identifier Oel_temp'; enthält angeforderte Information ~~~~~ Remote Frame; Identifier Oel_temp' Node A Node B (Öltemp.- Sensor) Wie heiß ist das Öl? 115°C 115 °C !

14 D Embedded Systems Seite 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 2 11 (=2048) 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. 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 (2 29 ) unterschiedliche Messages adressiert werden. Infineon C164CI: V2.0B active

15 D Embedded Systems Seite 15 Full-CAN Controller Message Object 2 CAN Bus Host CPU Message Object n CPU load low high Message Object Accep- tance Filtering Message Manage- ment 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.

16 D Embedded Systems Seite 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.

17 D Embedded Systems Seite 17 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. Eigenschaften des CAN-Moduls des C164CI

18 D Embedded Systems Seite 18 CAN-Bus Transceiver Receive Transmit CAN_H CAN_L P4.5 P4.6 CAN_L z.B. P8.0 Pa.b Pc.d C164CI CAN_H CAN_RxD CAN_TxD R(opt) (Standby) Verbindung zur Applikation 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).

19 D Embedded Systems Seite 19 CAN MESSAGES ACCEPTANCE FILTERING CAN CONTROLLER Global Mask (Teil der General Registers) Arbitration Register (LAR, Teil des Message Object) Resultierende Gültige Identfier "d" = don't care d d a) b) c) d) 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.

20 D Embedded Systems Seite 20 Bit-Timing TSeg1TSeg2 Sync- Segm. Sample- Zeitpunkt Sende- Zeitpunkt Bitdauer 1 Zeit- einheit Das Bit-Timing wird vom Systemtakt f PERIPHERAL abgeleitet und ist programmierbar bis zu einer Datenrate von 1 MBaud f CPU 16 MHz) SFRcan

21 D Embedded Systems Seite 21 Register des CAN-Controllers SFRcan

22 D Embedded Systems Seite 22 Message Object SFRcan CAN-SW


Herunterladen ppt "D 23.9.2009 Embedded Systems Seite 1 C166-Core Port 5 Port 3 CPU Dual Port RAM 2 KByte Interrupt Controller Watchdog Peripheral Data External Instr./Data."

Ähnliche Präsentationen


Google-Anzeigen