[РЕШЕНО]CRC16 для Modbus |
Здравствуйте, гость ( Вход | Регистрация )
[РЕШЕНО]CRC16 для Modbus |
larry |
17.11.2017, 21:55
Сообщение
#1
|
Студент Группа: Участник Сообщений: 55 Регистрация: 16.12.2010 Пользователь №: 2274 Спасибо сказали: 8 раз(а) Репутация: 0 |
Добрый день, форумчане.
Возник вопрос по расчету контрольной суммы для modbus. Нашел такую функцию:
Но никак не могу понять, почему в одном случае расчитывает правильно, а в другом не правильно. Например отправляю запрос устройству следующего вида:
и функция возвращает результат, который закоментирован (в калькуляторе тоже самое, т.е. все верно). Получаю ответ на этот запрос:
но расчет контрольной суммы не совпадает...по калькулятору совпадает как в комментарии.... В чем может быть трабла? Спасибо. Сообщение отредактировал larry - 18.11.2017, 9:31 |
|
|
Iron Bug |
17.11.2017, 23:30
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
алгоритм верный. я даже проверила по-быстрому. всё правильно он считает. может, ты ему данные как-то неправильно скармливаешь?
|
|
|
larry |
18.11.2017, 8:38
Сообщение
#3
|
Студент Группа: Участник Сообщений: 55 Регистрация: 16.12.2010 Пользователь №: 2274 Спасибо сказали: 8 раз(а) Репутация: 0 |
Спасибо большое за проверку. Буду проверять где лохонулся....тоже пришел к такому варианту, т.к. уже перелопатил много вариантов.
|
|
|
larry |
18.11.2017, 9:30
Сообщение
#4
|
Студент Группа: Участник Сообщений: 55 Регистрация: 16.12.2010 Пользователь №: 2274 Спасибо сказали: 8 раз(а) Репутация: 0 |
Передавал ввиде QByteArray, сделал как QVector<quint8>, то все правильно считает. Спасибо
|
|
|
Текстовая версия | Сейчас: 12.12.2024, 0:26 |