Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Микроконтроллеры других производителей

Микроконтроллеры других производителей Все, что касается микроконтроллеров и НЕ подошло в раздел Microchip.

Ответ
 
Опции темы Опции просмотра
Старый 16.07.2016, 16:11   #1
kolka
Member
 
Регистрация: 26.04.2007
Адрес: Simferopol
Возраст: 38
Сообщений: 80
Вес репутации: 100/40
kolka will become famous soon enoughkolka will become famous soon enough
По умолчанию CRC-Checksumme SAE J1850

передаются данные по кан, в конце контролька по SAE J1850.

40 C2 8F A0 AA 00 97 CF ;
40 C0 8F A0 AA 00 A7 09 ;
40 C0 8F A0 AA 00 B7 C4 ;
40 C0 8F A0 AA 00 C7 9D ;
40 C0 8F A0 AA 00 D7 50 ;
40 C0 8F A0 AA 00 E7 1A ;
40 C0 8F A0 AA 00 F7 D7 ;
40 C0 8F A0 AA 00 07 A8 ;
40 C0 8F 58 55 00 17 39 ;
40 C0 8F 58 55 00 27 73 ;
40 C0 8F 58 55 00 37 BE ;
40 C0 8F 58 55 00 47 E7 ;
40 C0 8F 58 55 00 57 2A ;
40 C0 8F 58 55 00 67 60 ;
40 C0 8F 58 55 00 77 AD ;
40 C0 8F 58 55 00 87 D2 ;
40 C0 8F 58 55 00 97 1F ;
40 C0 8F 58 55 00 A7 55 ;
40 C0 8F 58 55 00 B7 98 ;
40 C0 8F 58 55 00 C7 C1 ;
40 C0 8F 58 55 00 D7 0C ;

все было понятно как считать, считал вот так:


;----------------------------------------------------------
;************************************************* *******************
;----------------------------------------------------------
CalcCrcSaeJ1850:
PUSH.D W0
PUSH.D W2
;----------------------------
PUSH DCOUNT
PUSH DOSTARTH
PUSH DOSTARTL
PUSH DOENDH
PUSH DOENDL
;----------------------------
CLR.B CrcSaeJ1850
MOV CrcSaeJ1850Ptr, W1

MOV #0x06, W3
;----------------------------
DO W3, CalcCrcSaeJ1850End
MOV.B [W1++], W0
;----------------------------
XOR.B CrcSaeJ1850
MOV #0x3B, W0; C4^FF=3B
;------------------
BTSC.B CrcSaeJ1850, #0
XOR.B #0x1D, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #1
XOR.B #0x3A, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #2
XOR.B #0x74, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #3
XOR.B #0xE8, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #4
XOR.B #0xCD, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #5
XOR.B #0x87, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #6
XOR.B #0x13, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #7
XOR.B #0x26, W0; poly<, c=0
;------------------
MOV.B WREG, CrcSaeJ1850
;------------------
CalcCrcSaeJ1850End:
NOP
;----------------------------
POP DOENDL
POP DOENDH
POP DOSTARTL
POP DOSTARTH
POP DCOUNT
;----------------------------
POP.D W2
POP.D W0
RETURN
;----------------------------------------------------------
;************************************************* *******************
;----------------------------------------------------------






Теперь контролька в начале , чет не догоню как считается

CRC-Checksumme der Signal Group gemäß SAE J1850 {Signal Group ID 2Bh}

07 09 40 0C 06 00 00 00 ;
BD 0A 40 0C 06 00 00 00 ;
20 0B 40 0C 06 00 00 00 ;
D4 0C 40 0C 06 00 00 00 ;
49 0D 40 0C 06 00 00 00 ;
F3 0E 40 0C 06 00 00 00 ;
6E 0F 40 0C 06 00 00 00 ;
06 00 40 0C 06 00 00 00 ;
9B 01 40 0C 06 00 00 00 ;
21 02 40 0C 06 00 00 00 ;
BC 03 40 0C 06 00 00 00 ;
48 04 40 0C 06 00 00 00 ;
D5 05 40 0C 06 00 00 00 ;
6F 06 40 0C 06 00 00 00 ;
F2 07 40 0C 06 00 00 00 ;
9A 08 40 0C 06 00 00 00 ;
07 09 40 0C 06 00 00 00 ;

пните в нужном направлении.
kolka вне форума   Ответить с цитированием
Старый 16.07.2016, 18:03   #2
kolka
Member
 
Регистрация: 26.04.2007
Адрес: Simferopol
Возраст: 38
Сообщений: 80
Вес репутации: 100/40
kolka will become famous soon enoughkolka will become famous soon enough
По умолчанию Re: CRC-Checksumme SAE J1850

Цитата:
Сообщение от kolka Посмотреть сообщение
передаются данные по кан, в конце контролька по SAE J1850.

40 C2 8F A0 AA 00 97 CF ;
40 C0 8F A0 AA 00 A7 09 ;
40 C0 8F A0 AA 00 B7 C4 ;
40 C0 8F A0 AA 00 C7 9D ;
40 C0 8F A0 AA 00 D7 50 ;
40 C0 8F A0 AA 00 E7 1A ;
40 C0 8F A0 AA 00 F7 D7 ;
40 C0 8F A0 AA 00 07 A8 ;
40 C0 8F 58 55 00 17 39 ;
40 C0 8F 58 55 00 27 73 ;
40 C0 8F 58 55 00 37 BE ;
40 C0 8F 58 55 00 47 E7 ;
40 C0 8F 58 55 00 57 2A ;
40 C0 8F 58 55 00 67 60 ;
40 C0 8F 58 55 00 77 AD ;
40 C0 8F 58 55 00 87 D2 ;
40 C0 8F 58 55 00 97 1F ;
40 C0 8F 58 55 00 A7 55 ;
40 C0 8F 58 55 00 B7 98 ;
40 C0 8F 58 55 00 C7 C1 ;
40 C0 8F 58 55 00 D7 0C ;

все было понятно как считать, считал вот так:


;----------------------------------------------------------
;************************************************* *******************
;----------------------------------------------------------
CalcCrcSaeJ1850:
PUSH.D W0
PUSH.D W2
;----------------------------
PUSH DCOUNT
PUSH DOSTARTH
PUSH DOSTARTL
PUSH DOENDH
PUSH DOENDL
;----------------------------
CLR.B CrcSaeJ1850
MOV CrcSaeJ1850Ptr, W1

MOV #0x06, W3
;----------------------------
DO W3, CalcCrcSaeJ1850End
MOV.B [W1++], W0
;----------------------------
XOR.B CrcSaeJ1850
MOV #0x3B, W0; C4^FF=3B
;------------------
BTSC.B CrcSaeJ1850, #0
XOR.B #0x1D, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #1
XOR.B #0x3A, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #2
XOR.B #0x74, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #3
XOR.B #0xE8, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #4
XOR.B #0xCD, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #5
XOR.B #0x87, W0; poly<, c=1,^poly
BTSC.B CrcSaeJ1850, #6
XOR.B #0x13, W0; poly<, c=0
BTSC.B CrcSaeJ1850, #7
XOR.B #0x26, W0; poly<, c=0
;------------------
MOV.B WREG, CrcSaeJ1850
;------------------
CalcCrcSaeJ1850End:
NOP
;----------------------------
POP DOENDL
POP DOENDH
POP DOSTARTL
POP DOSTARTH
POP DCOUNT
;----------------------------
POP.D W2
POP.D W0
RETURN
;----------------------------------------------------------
;************************************************* *******************
;----------------------------------------------------------






Теперь контролька в начале , чет не догоню как считается

CRC-Checksumme der Signal Group gemäß SAE J1850 {Signal Group ID 2Bh}

07 09 40 0C 06 00 00 00 ;
BD 0A 40 0C 06 00 00 00 ;
20 0B 40 0C 06 00 00 00 ;
D4 0C 40 0C 06 00 00 00 ;
49 0D 40 0C 06 00 00 00 ;
F3 0E 40 0C 06 00 00 00 ;
6E 0F 40 0C 06 00 00 00 ;
06 00 40 0C 06 00 00 00 ;
9B 01 40 0C 06 00 00 00 ;
21 02 40 0C 06 00 00 00 ;
BC 03 40 0C 06 00 00 00 ;
48 04 40 0C 06 00 00 00 ;
D5 05 40 0C 06 00 00 00 ;
6F 06 40 0C 06 00 00 00 ;
F2 07 40 0C 06 00 00 00 ;
9A 08 40 0C 06 00 00 00 ;
07 09 40 0C 06 00 00 00 ;

пните в нужном направлении.
пока вычислил что там где есть комент {Signal Group ID 2Bh}
там считается как то по другому .

если комент CRC-Checksumme der Signal Group SAE J1850 то все по старому.
kolka вне форума   Ответить с цитированием
Старый 20.07.2016, 18:19   #3
kolka
Member
 
Регистрация: 26.04.2007
Адрес: Simferopol
Возраст: 38
Сообщений: 80
Вес репутации: 100/40
kolka will become famous soon enoughkolka will become famous soon enough
По умолчанию Re: CRC-Checksumme SAE J1850

закрыто, разобрался.
kolka вне форума   Ответить с цитированием
Старый 20.07.2016, 20:55   #4
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,641
Вес репутации: 5137/156
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: CRC-Checksumme SAE J1850

Цитата:
Сообщение от kolka Посмотреть сообщение
закрыто, разобрался.
ну так расскажи, что было-то...
Greg вне форума   Ответить с цитированием
Старый 20.07.2016, 21:45   #5
kolka
Member
 
Регистрация: 26.04.2007
Адрес: Simferopol
Возраст: 38
Сообщений: 80
Вес репутации: 100/40
kolka will become famous soon enoughkolka will become famous soon enough
По умолчанию Re: CRC-Checksumme SAE J1850

Цитата:
Сообщение от Greg Посмотреть сообщение
ну так расскажи, что было-то...
сразу скажу что без базы данных, что-либо вычислить будет трудоемко...

и так по порядку, can bus id020 (состояние ключа зажигания-его положение и т.д.), данные которые конкретно связаны с этим занимают 3 байта (09 40 0с), следующий байт относится к состоянию педали тормоза, и не входит в расчет crc.


CRC-Checksumme der Signal Group SAE J1850 {Signal Group ID 2Bh}

07 09 40 0C 06 00 00 00 ;
07 09 40 0c 2b - наши 3 байта, 4ым байтом подставляется {Signal Group ID 2Bh}, получаем 4 полезных байта для сасчета crc, не смотря на то что передается 8.

в некоторых id
если полезная информация занимает 1байт-контролька и 7 байт инфы , всего 8байт, то {Signal Group ID 2Bh} подставляется 9байтом и расчитывается crc

первый crc
FF 00 00 00 00 00 00 00
00 00 00 00 00 00 00 2b
d0 d1 d3 d4 d5 d6 d7 d8

в крации так. 3 дня ушло....
kolka вне форума   Ответить с цитированием
Старый 20.07.2016, 21:52   #6
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,641
Вес репутации: 5137/156
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: CRC-Checksumme SAE J1850

Цитата:
Сообщение от kolka Посмотреть сообщение
в крации так. 3 дня ушло....
спасибо
Greg вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DALLAS 1-Wire CRC8, вопросы EviL_LaugH Вопросы начинающих 7 01.06.2011 14:14
Реализация расчета контрольной суммы протокола Modbus Zeus80 Cетевые протоколы и технологии 21 15.08.2009 11:30
1 wire...Search ROM? timday Продукция MICROCHIP 13 08.05.2008 20:05


Часовой пояс GMT +3, время: 10:42.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot