RT-Socket-CAN

From V5wiki

Jump to: navigation, search

Contents

RT-Socket-CAN - RTDM driver for CAN devices

RT-Socket-CAN is an Open Source hard real-time protocol stack for CAN devices based on BSD sockets. This implementation is for RTDM, the Real-Time-Driver-Model. Note that there is a similar variant being developed for standard Linux using the Linux networking stack.

rt_sja1000_plx_pci

в репозитории xenomai: http://git.xenomai.org/?p=xenomai-2.5.git;a=history;f=ksrc/drivers/can/sja1000/rtcan_plx_pci.c;h=bb2c54701526751a89c6be21c93a790d0e4fab1a;hb=HEAD

имя файла с драйвером: xeno_can_plx_pci.ko

В случае работы драйвера с контроллерами, которые имеют больше одного CAN-чипа, ядро Xenomai должно быть сконфигурировано с поддержкой shared interrupts:

Real-time sub-system  --->  Shared interrupts

rtcan utils

Расположены:

/export/dev/build_root/src/utils/can

rtcanconfig

Инициализация интерфейса rtcan0 на скорость 1 Мбит в нормальном режиме работы CAN-чипа:

$ ./rtcanconfig -c none -b 1000000 rtcan0 start

rtcansend

Отправка пакета в линию через интерфейс rtca0 с идентификатором 0x500 и данными 0xff:

$ ./rtcansend rtcan0 -v -i 0x500  0xff
interface rtcan0
s=1, ifr_name=rtcan0
<0x500> [1] ff
Cleaning up...

rtcanrecv

Получение пакетов из интерфейса rtcan1

$ ./rtcanrecv rtcan1
#0: (2) <0x7e8> [8] ff 03 01 07 03 00 00 00
Personal tools