User manual
248Bibliotheken
© 2013 Conrad Electronic
5.5.4 CAN_Init
CAN Bus Funktionen
Syntax
void CAN_Init(byte speed, byte fifo_len, byte fifo_addr[]);
Sub CAN_Init(speed As Byte, fifo_len As Byte, ByRef fifo_addr As Byte);
Beschreibung
Initialisiert die CAN Funktionen. Bei der Initialisierung wird vom Benutzer ein RAM Puffer für den Empfang
von CAN Nachrichten zur Verfügung gestellt, in dem fifo_len Nachrichten gespeichert werden können. Für
die Größe des RAM Bereiches gibt es ein #define CAN_BUF. Möchte man ein byte Array definieren mit
Platz für fifo_len Nachrichten, schreibt man "byte buf[CAN_BUF(fifo_len)];" (siehe auch Bei-
spiele). Ist der FIFO voll, werden ankommende CAN Nachrichten nicht gespeichert.
Der vom Benutzer zur Verfügung gestellte RAM Puffer muss während der Benutzung der CAN Schnitt-
stelle reserviert bleiben. Da lokale Variablen nach Verlassen der Funktion freigegeben werden, ist es
meistens sinnvoll den Puffer als globale Variable zu deklarieren.
Parameter
speed CAN Bus Geschwindigkeit
fifo_len Anzahl der Einträge im Empfangsfifo
fifo_addr Benutzerspeicher für den Empfangspuffer
speed Parameter:
Wert Mega
Wert AVR32Bit (Hex)
Definition
CAN Baudrate
0
-
CAN_10KBPS
10.000bps
1
-
CAN_20KBPS
20.000bps
2
-
CAN_40KBPS
40.000bps
-
e1b3c
CAN_50KBPS
50.000bps
3
e1b1d
CAN_100KBPS
100.000bps
4
e1b17
CAN_125KBPS
125.000bps
5
e1b0d
CAN_200KBPS
200.000bps
6
e1b0b
CAN_250KBPS
250.000bps
7
e1b05
CAN_500KBPS
500.000bps
8
c1204
CAN_800KBPS
800.000bps
9
e1b02
CAN_1MBPS
1.000.000bps