23 lines
1.2 KiB
C
23 lines
1.2 KiB
C
/**
|
||
* @file ecan.h
|
||
* @brief Минимальный публичный интерфейс обмена по CAN.
|
||
*
|
||
* Port выбирает аппаратный контроллер, DevNum/Addr определяют логический узел.
|
||
* Массив данных должен содержать формат кадра, ожидаемый реализацией ecan.c.
|
||
*/
|
||
/**
|
||
* Настраивает CAN-порт и почтовые ящики логического устройства.
|
||
* @param Port Номер аппаратного CAN-контроллера.
|
||
* @param DevNum Номер узла; реализация ограничивает его диапазоном 1..16.
|
||
*/
|
||
void InitCan(int Port, int DevNum);
|
||
/**
|
||
* Ставит прикладные данные в передающий mailbox.
|
||
* @param Port Номер аппаратного CAN-контроллера.
|
||
* @param data Массив слов кадра в формате проекта.
|
||
* @param Addr Адрес получателя.
|
||
*/
|
||
void CAN_send(int Port, int data[], int Addr);
|
||
/** Последние прикладные слова, принятые обработчиком CAN. */
|
||
extern int CAN_input_data[];
|