Помогите рассчитать контрольную сумму

Добрый день!

Имеется монитор с управлением по 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 битов суммы всех байтов от счетчика до контрольной суммы, но не получается. Или я как-то не так складываю(

Помогите рассчитать контрольную сумму Rs232, Bit, Byte, Алгоритм, Длиннопост

Методом подбора контрольной суммы получилось успешно выполнить команду


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. Ну и соответственно, уровень знаний.