Помогите рассчитать контрольную сумму
Добрый день!
Имеется монитор с управлением по RS-232.
Не могу понять как рассчитать контрольную сумму. В мануале написано "This value is set so that the bottom eight bits of the sum of all bytes from the byte count to the checksum inclusive are zero.". Как я понял это нижние 8 битов суммы всех байтов от счетчика до контрольной суммы, но не получается. Или я как-то не так складываю(
Методом подбора контрольной суммы получилось успешно выполнить команду
0x02 0x03 0x01 0x50 0x6E 0x3E
// 00000001 0x01
// 01010000 0x50
// 01101110 0x6E
// 00111110 0x3E
На нее пришел ответ в том же формате
0x02 0x04 0x50 0x01 0x7E 0x22 0x0B
// 01010000 0x50
// 00000001 0x01
// 01111110 0x7E
// 00100010 0x22
// 00001011 0x0B
При ошибочном запросе получаю ответ
0x02 0x04 0x50 0x01 0x05 0x04 0xA2
// 01010000 0x50
// 00000001 0x01
// 00000101 0x05
// 00000100 0x04
// 10100010 0xA2
Простое сложение не дает правильных результатов, CRC тоже не подходит. Помогите найти правильный алгоритм
Сообщество Ремонтёров - Помощь
10K поста13.9K подписчика
Правила сообщества
Посты с процессом ремонта создавайте в родительском сообществе pikabu.ru/community/remont.
В этом сообществе, можно выкладывать посты с просьбами о помощи в ремонте электро-техники. Цифровой, бытовой и т.п., а про ремонт картин, квартир, ванн и унитазов, писать в других сообществах :)
Требования к оформлению постов:
1. Максимально полное наименование устройства.
2. Какие условия привели к поломке, если таковые известны.
3. Что уже делали с устройством.
4. Какое имеется оборудование.
5. Ну и соответственно, уровень знаний.