1 #ifndef __CAN_CODES_H__ 2 #define __CAN_CODES_H__ 4 #include <linux/ioctl.h> 226 unsigned char rs : 1;
234 unsigned char ts : 1;
242 unsigned char es : 1;
250 unsigned char bs : 1;
462 unsigned char data[8];
467 struct timeval timestamp;
469 #include <linux/version.h> 470 #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0) 471 struct __kernel_old_timeval timestamp;
473 struct timeval timestamp;
483 unsigned char filter;
490 unsigned char mask[4];
491 unsigned char filter[4];
523 struct transmit_status_t
533 #define CAN_MAX_DEVICE 10 540 #define CAN_DROP_CURRENT 0 541 #define CAN_DROP_ALL 1 548 #define CAN_TRANSMIT_WAIT 0 549 #define CAN_TRANSMIT 1 550 #define CAN_TRANSMIT_COMPLETE 2 551 #define CAN_TRANSMIT_ERROR 3 552 #define CAN_TRANSMIT_DROP 4 568 #define CAN_SPEED_USER_DEFINED(btr0, btr1) (0xffff | (((btr0) & 0xff) << 24) | (((btr1) & 0xff) << 16)) 569 #define IS_CAN_SPEED_USER_DEFINED(speed) ((0xffff == ((speed) & 0xffff)) ? 1 : 0) 570 #define CAN_SPEED_GET_BTR0(speed) (((speed) >> 24) & 0xff) 571 #define CAN_SPEED_GET_BTR1(speed) (((speed) >> 16) & 0xff) 572 #define CAN_SPEED_1000 1000 573 #define CAN_SPEED_800 800 574 #define CAN_SPEED_500 500 575 #define CAN_SPEED_250 250 576 #define CAN_SPEED_125 125 577 #define CAN_SPEED_50 50 578 #define CAN_SPEED_20 20 579 #define CAN_SPEED_10 10 587 #define CAN200_IOC_MAGIC 'k' 590 #define CAN200_HARDRESET _IO(CAN200_IOC_MAGIC, 0) 591 #define CAN200_SETWORKMODE _IOW(CAN200_IOC_MAGIC, 1, unsigned char) 592 #define CAN200_GETWORKMODE _IOR(CAN200_IOC_MAGIC, 2, unsigned char) 593 #define CAN200_SETDRIVERMODE _IO(CAN200_IOC_MAGIC, 3) 594 #define CAN200_GETCANSPEED _IOR(CAN200_IOC_MAGIC, 4, unsigned int) 595 #define CAN200_SETCANSPEED _IOW(CAN200_IOC_MAGIC, 5, unsigned int) 596 #define CAN200_GETSTATUS _IOR(CAN200_IOC_MAGIC, 6, unsigned char) 597 #define CAN200_GETCONFIG _IOR(CAN200_IOC_MAGIC, 7, struct CAN_info_t) 598 #define CAN200_B_SETFILTER _IOW(CAN200_IOC_MAGIC, 8, struct b_filter_t) 599 #define CAN200_P_SETFILTER _IOW(CAN200_IOC_MAGIC, 9, struct p_filter_t) 600 #define CAN200_P_GETRXERRORCOUNTER _IOR(CAN200_IOC_MAGIC, 10, unsigned char) 601 #define CAN200_P_SETRXERRORCOUNTER _IOW(CAN200_IOC_MAGIC, 11, unsigned char) 602 #define CAN200_P_GETTXERRORCOUNTER _IOR(CAN200_IOC_MAGIC, 12, unsigned char) 603 #define CAN200_P_SETTXERRORCOUNTER _IOW(CAN200_IOC_MAGIC, 13, unsigned char) 604 #define CAN200_P_GETERRORWARNINGLIMIT _IOR(CAN200_IOC_MAGIC, 14, unsigned char) 605 #define CAN200_P_SETERRORWARNINGLIMIT _IOW(CAN200_IOC_MAGIC, 15, unsigned char) 606 #define CAN200_B_GETFILTER _IOR(CAN200_IOC_MAGIC, 16, struct b_filter_t) 607 #define CAN200_P_GETFILTER _IOR(CAN200_IOC_MAGIC, 17, struct p_filter_t) 608 #define CAN200_GETOVERCOUNTER _IOR(CAN200_IOC_MAGIC, 18, int) 609 #define CAN200_SETBUSON _IO(CAN200_IOC_MAGIC, 19) 610 #define CAN200_GETTRANSMITSTATUS _IOR(CAN200_IOC_MAGIC, 20, struct transmit_status_t) 611 #define CAN200_P_GETEARBITRATIONLOSTCAPTURE _IOR(CAN200_IOC_MAGIC, 21, unsigned char) 612 #define CAN200_P_GETERRORCODE _IOR(CAN200_IOC_MAGIC, 22, unsigned char) 613 #define CAN200_DROPTRANSMIT _IOW(CAN200_IOC_MAGIC, 23, unsigned char) 614 #define CAN200_GETNUMCHANNEL _IOR(CAN200_IOC_MAGIC, 24, int) 615 #define CAN200_GETDRIVERVERSION _IOR(CAN200_IOC_MAGIC, 25, int) unsigned char rsvd
Зарезервировано
Definition: can_codes.h:418
unsigned char errc
Код ошибки
Definition: can_codes.h:334
unsigned long id
Идентификатор
Definition: can_codes.h:448
unsigned char type
Формат кадра
Definition: can_codes.h:440
unsigned char tbs
Доступность буфера передачи
Definition: can_codes.h:210
unsigned char dos
Переполнение приемного буфера
Definition: can_codes.h:202
unsigned char seg
Сегмент
Definition: can_codes.h:314
Структура для получения информации о плате.
Definition: can_codes.h:501
unsigned char ts
Состояние передачи
Definition: can_codes.h:234
unsigned char rs
Состояние приёма
Definition: can_codes.h:226
unsigned char tcs
Завершенность передачи
Definition: can_codes.h:218
int wPorts
Базовый адрес
Definition: can_codes.h:514
unsigned char rbs
Состояние буфера приема
Definition: can_codes.h:194
unsigned char rtr
Значение бита RTR (0 или 1)
Definition: can_codes.h:452
int wIRQ
Номер вектора прерывания
Definition: can_codes.h:518
Структура определения точки потери арбитража.
Definition: can_codes.h:343
unsigned char es
Наличие ошибок
Definition: can_codes.h:242
unsigned char alc
Точка потери арбитража
Definition: can_codes.h:414
unsigned char bs
Состояние шины
Definition: can_codes.h:250
Структура описывающая статус платы
Definition: can_codes.h:183
Структура для кода ошибки.
Definition: can_codes.h:259
unsigned char dlc
Количество принятых/выдаваемых байт данных (0-8)
Definition: can_codes.h:456
unsigned char dir
Направление
Definition: can_codes.h:322
Принятый/выдаваемый CAN кадр
Definition: can_codes.h:429