CAN_Init

CAN Bus Funktionen


Syntax

 

void CAN_Init(byte speedbyte fifo_lenbyte fifo_addr[]);

 

Sub CAN_Init(speed As Bytefifo_len As ByteByRef 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 Beispiele). 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 Schnittstelle 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