Der CAN-Treiber hat die Aufgabe, den/die CAN-Controller zu initialisieren, Botschaften zu senden sowie empfangene Botschaften und Fehlerzustände weiterzuleiten. Die Schnittstelle des CAN-Treibers ist so ausgelegt, dass die Umstellung auf andere CAN-Controller leicht erfolgen kann.
Die folgende Tabelle zeigt die derzeit unterstützten CAN-Controller bzw. Prozessoren. Weitere Treiber auf Anfrage. Bitte beachten Sie auch die Listen für CANbedded und den CANopen Slave Source Code.
| Controller |
CAN |
Compiler |
| Infineon |
C161, C164, C167 |
internal |
Tasking, Keil (*5) |
| C166 |
external 82527, SJA1000, (81C90/91) |
| XC164CS |
TwinCAN |
| STM |
ST10F276 |
internal (C_CAN) |
Tasking |
| Intel |
80x86 |
82527, SJA1000 |
MS VC++ |
| Freescale (Motorola) |
PowerPC 555,565 |
internal TouCAN |
GNU GCC |
| 68376 |
internal TouCAN |
| 68xxx |
82527, TouCAN, SJA1000 |
| HCS12 |
intern msCAN12 |
Metrowerks
|
| Renesas (Hitachi) |
SH2/SH7047
|
internal HCAN2 |
Hitachi HEW |
| SH2/SH7055 |
internal dual HCAN1
|
| Vector |
CANoe osCAN Emulation |
CANcardXL, CANcaseXL, ... |
MS VC++. also available as DLL |
| Several manufacturers |
ANSI-C |
82527, TouCAN, SJA1000 |
|
* = planned/under development
*5 = with additional fee