DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> YesWeCAN

Details

Allgemein:

Es sollen zwei Arduino Boards mit zwei selbst entwickelten CAN-Bus Shields über ein Kabel (RS232) verbunden werden um anschließend das Format, das Protokoll, die Arbitrierung und die Spannungspegel zu analysieren.

Technische Details:

Datentelegramm:

Das CAN-Bussystem kennt zwei Formate um ein Datentelegramm über die Buskonfiguration zu verschicken. Das "Base-Frame Format"auch CAN 2.0A besteht aus einem einem 11Bit Identifier während das "Extended-Frame Format" oder CAN2.0B aus einem 29Bit Identifier besteht. Die Unterscheidung erfolgt im ID Extension Bit.
Die eigentlichen Daten befinden sich im 8Bit- Data Field. Die CRC-Checksumme dient dazu das Datentelegramm zu prüfen und fehlerhafte Telegramme zu vermeiden. Das EOF-Field wird benötigt um das Ende eines vollständigen Telegrammes zu signalisiern. Eine Besonderheit ist die Bitstuffing-Methode die nach fünf gleichen Pegeln einen invertierten Pegel einspeißt um weitere Fehler zu vermeiden.

Arbitrierung:

Bei der Arbitrierung geht es um den Vorgang bei zwei gleichzeitig gesendeten Datentelegrammen eine Priorisierung eines der beiden Telegramme vorzunehmen. Beim CAN-Bus wird deshalb das Telegramm mit dem niedrigeren Identifier bevorzugt und als erstes gesendet. Erst wenn der Bus nicht mehr belegt ist, sendet der 2. Busteilnehmer sein Datentelegramm.