Вернуться   Форум КРЕЙТ > Вопросы > Интерфейсы, построение сетей

Интерфейсы, построение сетей Объединение котроллеров в сети для сбора и обработки информации

 
 
Опции темы Опции просмотра
Старый 11.11.2013, 10:30   #1
anselm
Новичок
 
Аватар для anselm
 
Адрес: Челябинск
Сообщений: 9
По умолчанию Контрольная сумма

И снова здравствуйте!
У меня вопрос по контрольной сумме в ответе.
Есть связка GSM-модем Maestro-100, К-105 и ТЭКОН-19. Делаю успешные запросы с командой 11 и получаю ответы, но очень часто (где-то с частотой 50/50) они приходят с неправильной контрольной суммой, несмотря на правильную сигнатуру всего ответа. Например, такой ответ:
Код:
68 06 06 68 01 01 47 44 20 40 6D 16
Всё здесь правильно, включая пришедшее число float = 2.504167 - а вот контрольная сумма неправильная 6D, тогда как должна быть ED.
Тут же делаю такой же запрос и получаю уже абсолютно правильный ответ с правильной контрольной суммой:
Код:
68 06 06 68 01 01 7B 32 2C 40 1B 16
Контрольную сумму для данного ответа считаю по такому алгоритму:
Код:
unsigned char CS(const char* a)
{
  unsigned char b = 0;
  for(int i=4; i<10; i++) {
    b = (b + a[i]) % 256;
  }
  return b;
}
Подскажите пожалуйста, где тут кроется ошибка?

Добавлено через 13 минут

Дополнение.
Сейчас заметил ещё одну закономерность: ВСЕ ошибочные контрольные суммы отличаются ровно на 80h от правильной контрольной суммы!
К чему бы это?

Добавлено через 19 минут

Дополнение.
Получается, что контрольную сумму надо брать по модулю 128, а не 256?
anselm вне форума  
 


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Контроллер К-104 Незарегистрированный Интерфейсы, построение сетей 26 12.12.2012 22:30
Электрическая принципиальная схема ТЭКОН 17 vita20 Документация 3 25.01.2010 15:25
Отрицательная квитанция 5ova Программное Обеспечение 4 27.12.2007 17:01


Текущее время: 15:24. Часовой пояс GMT +5.


Powered by vBulletin® Version 3.7.0 RC3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Время генерации страницы 0.06608 секунды с 11 запросами