[En-Nut-Discussion] CAN bus and Ethernut 2 and 3
jose.vallet at hut.fi
Thu Jan 18 18:57:33 CET 2007
We might need CAN bus in one future design, and I am trying to figure
out whether is supported or not. I should say here that I have no prior
experience with CAN at all, so I would kindly appreciate some
comments/guidance on this issue.
I can see that something has been discussed, and from the API
documentation the following files related to CAN bus can be found.
arch/avr/dev/ih_canit.c CAN serial transfer interrupt
arch/avr/dev/ih_ovrit.c CAN overflow interrupt
arch/avr/dev/sja1000.c Driver for SJA1000 CAN-Bus controller
dev/can_dev.c Driver for CAN-Bus devices
include/cfg/m-can.h MCAN Board Configuration
include/dev/atcan.h Header for Atmel's internal Full CAN controller driver
include/dev/can_dev.h Headers for can driver interface
include/dev/sja1000.h Header for SJA1000 CAN-Bus controller driver
This makes me think that
1-There is an API for NutOS
2-There is a driver for the AVR and the SJA1000 controller.
2-There is NOT driver for the AT91R40008 and the SJA1000 controller.
Of course I might be totally wrong, Am I?
What is the situation with CAN and Ethernut?
If not supported by AT91R40008, I assume that the driver for SJA1000
could be somehow ported from the AVR version. Any comments here? Would
it be "hard"/"straightforward"?
What would be the best solution to add CAN to the Ethernuts? Is there
any documentation available somewhere?
Any comments appreciated.
More information about the En-Nut-Discussion