Решение проблем с NBTEVO, Коды FSC для BMW -----> Получить - жмите ссылку |
Утилиты для работы с .С_ файлами
#41 Гость__*
Отправлено 28 января 2010 - 16:56
#42
Отправлено 28 января 2010 - 19:32
Но писать тяжко. Только while, if, else.
Массивов нет. Есть конструкции типа структуры.
К ним отдельные функции для записи и считывания.
Ну очень странный С.
#43
Отправлено 28 января 2010 - 22:22
Точно также пишеш, потом INPACOMP.
Но писать тяжко. Только while, if, else.
Массивов нет. Есть конструкции типа структуры.
К ним отдельные функции для записи и считывания.
Ну очень странный С.
Нет-потому что не нужны очевидно. чисто описать структуру экрана, меню и реализовать запросы в ЭБУ и получение ответа от него. Все. Это для INPA. IPO для winkfp и NCS-имеют другую структуру совсем...
#44
Отправлено 29 января 2010 - 09:44
#45
Отправлено 01 февраля 2010 - 23:55
Алгоритм там простейший crc8, просто у стандартного crc8 xor по 0x31, а у бмв xor по 0x1
Млин, странно, яж его вроде перебирал....
Спасибо, Миш. Гляну еще раз...
#46 Гость__*
Отправлено 02 февраля 2010 - 01:37
Гляди, вот пример из педовикии:
Алгоритм там простейший crc8, просто у стандартного crc8 xor по 0x31, а у бмв xor по 0x1
Млин, странно, яж его вроде перебирал....
Спасибо, Миш. Гляну еще раз...
/* Name : CRC-8 Poly : 0x31 x^8 + x^5 + x^4 + 1 Init : 0xFF Revert: false XorOut: 0x00 Check : 0xF7 ("123456789") MaxLen: 15 байт(127 бит) - обнаружение одинарных, двойных, тройных и всех нечетных ошибок */ unsigned char Crc8(unsigned char *pcBlock, unsigned char len) { unsigned char crc = 0xFF; unsigned char i; while (len--) { crc ^= *pcBlock++; for (i = 0; i < 8; i++) crc = crc & 0x80 ? (crc << 1) ^ 0x31 : crc << 1; } return crc; }В "классическом" crc8 у нас 0x31, в "бмвшном" 0x1
crc = crc & 0x80 ? (crc << 1) ^ 0x31 : crc << 1;
#47
Отправлено 05 февраля 2010 - 00:45
0х31 - это репрезентация полинома x^8 + x^5 + x^4 + 1.
Соотв. 0x1 - фактически будет означать полином Х+1. А это CRC1 - фактически бит четности. БИТ!!! А нам нужно получить байт.
Ну и сам посмотри, Миш - если заменить внизу 0х31 на 0х1, то получится мы возводим в степень 1!. Т.е. ничего не делаем, просто делаем смещение на 1 бит.
Не то, - явно. Там в файла нормальный контрольный байт, принимающий полный диапазон значений, а не два из них: 0х00 и 0х01
#48 Гость__*
Отправлено 13 февраля 2010 - 04:11
#49
Отправлено 15 января 2011 - 00:45
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных