equal
deleted
inserted
replaced
42 UNS8 data; |
42 UNS8 data; |
43 TPCANMsg peakMsg; |
43 TPCANMsg peakMsg; |
44 if ((errno = CAN_Read(fd0, & peakMsg))) { // Blocks until no new message or error. |
44 if ((errno = CAN_Read(fd0, & peakMsg))) { // Blocks until no new message or error. |
45 if(errno != -EIDRM && errno != -EPERM) // error is not "Can Port closed while reading" |
45 if(errno != -EIDRM && errno != -EPERM) // error is not "Can Port closed while reading" |
46 { |
46 { |
47 perror("!!! Peak board : error of reading. (from f_can_receive function) \n"); |
47 perror("canReceive_driver (Peak_Linux) : error of reading.\n"); |
48 } |
48 } |
49 return 1; |
49 return 1; |
50 } |
50 } |
51 m->cob_id.w = peakMsg.ID; |
51 m->cob_id.w = peakMsg.ID; |
52 if (peakMsg.MSGTYPE == CAN_INIT_TYPE_ST) /* bits of MSGTYPE_*/ |
52 if (peakMsg.MSGTYPE == CAN_INIT_TYPE_ST) /* bits of MSGTYPE_*/ |
75 /* count of data bytes (0..8) */ |
75 /* count of data bytes (0..8) */ |
76 for(data = 0 ; data < m->len; data ++) |
76 for(data = 0 ; data < m->len; data ++) |
77 peakMsg.DATA[data] = m->data[data]; /* data bytes, up to 8 */ |
77 peakMsg.DATA[data] = m->data[data]; /* data bytes, up to 8 */ |
78 |
78 |
79 if((errno = CAN_Write(fd0, & peakMsg))) { |
79 if((errno = CAN_Write(fd0, & peakMsg))) { |
80 perror("!!! Peak board : error of writing. (from canSend function) \n"); |
80 perror("canSend_driver (Peak_Linux) : error of writing.\n"); |
81 return 1; |
81 return 1; |
82 } |
82 } |
83 return 0; |
83 return 0; |
84 |
84 |
85 } |
85 } |
113 { |
113 { |
114 sprintf(busname,"/dev/pcan%s",board->busname); |
114 sprintf(busname,"/dev/pcan%s",board->busname); |
115 fd0 = LINUX_CAN_Open(busname, O_RDWR); |
115 fd0 = LINUX_CAN_Open(busname, O_RDWR); |
116 } |
116 } |
117 |
117 |
118 if(baudrate = TranslateBaudeRate(board->baudrate)) |
118 if(fd0 && (baudrate = TranslateBaudeRate(board->baudrate))) |
|
119 { |
119 CAN_Init(fd0, baudrate, CAN_INIT_TYPE_ST); |
120 CAN_Init(fd0, baudrate, CAN_INIT_TYPE_ST); |
|
121 }else{ |
|
122 fprintf(stderr, "canOpen_driver (Peak_Linux) : error opening %s\n", busname); |
|
123 } |
120 |
124 |
121 return (CAN_HANDLE)fd0; |
125 return (CAN_HANDLE)fd0; |
122 } |
126 } |
123 |
127 |
124 /***************************************************************************/ |
128 /***************************************************************************/ |