AUTOSAR:

Integration hardware-spezifischer Eigenschaften in MCUs

2. März 2010, 15:43 Uhr | Dr. Guangyu Wang
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Mikrocontroller und AUTOSAR

Beispiel 2: CAN-Gateway-Funktion

Das Gateway-Modul, das auf der Nachrichtenobjektebene arbeitet, ermöglicht die Erarbeitung einer automatischen Informationsübertragung zwischen zwei unabhängige CAN-Bussen ohne Mitwirken einer CPU. Im Gateway-Modus wird die Information zwischen zwei Nachrichtenobjekten übertragen – hier zwischen zwei CAN-Knoten, für die die Nachrichtenobjekte vorgesehen sind. Auf diese Weise sollte zwischen allen CAN-Knotenpaaren ein Gateway realisiert werden. Folglich ist die Anzahl der Gateways gleich der Anzahl an Nachrichtenobjekten, auf denen die Gateway-Struktur aufbaut. In Bild 3 ist die Gateway-Übertragung auf Nachrichtenobjektebene von der entsprechenden Quelle zum dazugehörigen Ziel dargestellt. Um eine derartige Gateway-Funktion innerhalb des CAN-Treibers zu realisieren, ist eine zusätzliche Definition der jeweiligen Objekttypen notwendig. In der aktuellen AUTOSAR-CAN-Spezifikation gibt es folgende Container für die CAN-Konfiguration:

 

  • Container 1: CanDriverConfiguration.
  • Container 2: CanController.
  • Container 3: CanFilterMask.
  • Container 4: CanHardwareObject.

 

911ah043_tm_02.jpg
Bild 3. Darstellung der Gateway-Übertragung von der Quelle zum Ziel.

Der Container 1 beherbergt die allgemeinen Konfigurationsparameter der CAN-Treiber, Container 2 konfiguriert den CAN-Knoten. Der Container 3 beschreibt die Maske für die hardware-basierte Filterung des CAN-Identifizierers und Container 4 konfiguriert die CAN-Nachrichtenobjekte. In der aktuellen AUTOSAR-CAN-Spezifikation definiert der Parameter CanObjectType des Containers 4 den Typ des Nachrichtenobjektes. Allerdings sind dort lediglich die zwei Typen Tx und Rx definiert, wodurch die Nachrichtenobjekte entweder empfangene oder übertragene Objekte darstellen. Außerdem ist keine Information vorhanden, die die Gateway- Nachricht indiziert. Damit die Gateway-Funtion unterstützt werden kann, sind zusätzliche Werte für den Konfigurationsparameter Can-ObjectType zu definieren:

 

  • Rx: 0 (Objekt für den Empfang, Default).
  • Tx: 1 (Objekt für die Übertragung).
  • GwSource: 2 (Objekt für die Gateway-Quelle).
  • GwDestination: 3 (Objekt für das Gateway-Ziel).

 

Im Falle, dass der Parameter Can-ObjectType eines Objektes als 2 oder 3 konfiguriert ist, wird das Objekt für die Gateway-Kommunikation genutzt. Wie in Bild 4 dargestellt, muss dafür das Nachrichtenobjekt innerhalb der API-Funktion Can_Init( ) als Gateway- Objekt initialisiert sein.

 

Björn Graunitz, Elektronik automotive

 

911ah044_tm_02.jpg
Bild 4. Programmablauf der API-Funktion Can_init( ).
Dr.-Ing. Guangyu Wang hat an der Universität Kiel mit Schwerpunkt Digitale Signalverarbeitung promoviert. Danach war er wissenschaftlicher Mitarbeiter an der Universität Erlangen-Nürnberg. Seit September 2000 ist er bei Infineon tätig und für die Applikation des Mikrocontrollers mit Schwerpunk Bussysteme in der Fahrzeugtechnik verantwortlich. Aktuell arbeitet er als Senior Application Engineer im Bereich Automobilelektronik. Seine Spezialgebiete sind DSP, LIN-Bus und AUTOSAR.
guangyu.wang@infineon.com

  1. Integration hardware-spezifischer Eigenschaften in MCUs
  2. Mikrocontroller und AUTOSAR
  3. Mikrocontroller und AUTOSAR

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Infineon Technologies AG