реклама на сайте
подробности

 
 
> Коллизия в CAN
drnoob
сообщение Feb 20 2015, 08:22
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 20-02-15
Пользователь №: 85 274



Ребята, помогите разобраться.
В стандарте J1939 сказано, что если два узла с одинаковыми идентификаторами и разными данными осуществляют передачу одновременно, то произойдет коллизия. Коллизия приведет к ошибке, количество ошибок определит статус узла(активная ошибка, пассивная ошибка, отключение от шины). Но непонятно как отловить эту коллизию? По каким признакам определить, что произошла именно коллизия?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
drnoob
сообщение Feb 20 2015, 10:27
Сообщение #2





Группа: Новичок
Сообщений: 3
Регистрация: 20-02-15
Пользователь №: 85 274



Интересно, даже не знал. Жаль, подобной детализации нет во фрискейлах.
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 20 2015, 10:54
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(drnoob @ Feb 20 2015, 13:27) *
Интересно, даже не знал. Жаль, подобной детализации нет во фрискейлах.

В LPC2368 было еще подробнее)
Цитата
20:16 ERRBIT
4:0[3]
Error Code Capture: when the CAN controller detects
a bus error, the location of the error within the frame is
captured in this field. The value reflects an internal
state variable, and as a result is not very linear:
0 X
00011 Start of Frame
00010 ID28 ... ID21
00110 ID20 ... ID18
00100 SRTR Bit
00101 IDE bit
00111 ID17 ... 13
01111 ID12 ... ID5
01110 ID4 ... ID0
01100 RTR Bit
01101 Reserved Bit 1
01001 Reserved Bit 0
01011 Data Length Code
01010 Data Field
01000 CRC Sequence
11000 CRC Delimiter
11001 Acknowledge Slot
11011 Acknowledge Delimiter
11010 End of Frame
10010 Intermission
10001 Active Error Flag
10110 Passive Error Flag
10011 Tolerate Dominant Bits
10111 Error Delimiter
11100 Overload flag
21 ERRDIR When the CAN controller detects a bus error, the
direction of the current bit is captured in this bit.
0 X
0 Error occurred during transmitting.
1 Error occurred during receiving.
23:22 ERRC1:0 When the CAN controller detects a bus error, the type
of error is captured in this field:
0 X
00 Bit error
01 Form error
10 Stuff error
11 Other error


Тут есть спецы по фрискейлам. Подождите - может подскажут.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th August 2025 - 11:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01369 секунд с 7
ELECTRONIX ©2004-2016