C Control PRO Unit Mega 128 198219 User Manual
Product codes
198219
248
Bibliotheken
© 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
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)];"
). 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.
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