| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Рассчет контрольной суммы LRC |
| Автор: Cergiy 15.4.2008, 11:30 | ||||
| Приветствую всех! Мне нужно для протокола MODBUS-ASCII, рассчитывать контрольную сумму LRC. У меня есть функция и мне нужно понять правильно ли она считает эту самую сумму. Это пример на языке «С» (который приводится в описании прибора), но я его не знаю.
А вот что у меня(из книжки П.Агуров «Последовательные интерфейсы ПК. Практика программирования») есть на Делфи.
Я сопоставить два этих когда не могу и поэтому сказать что-то не могу. Может кто-то занимался этой проблемой и у него есть свой РАБОЧИЙ код? Основная тема, для чего это нужно - http://forum.vingrad.ru/forum/topic-206444/anchor-entry1479600/0.html. |
| Автор: Poseidon 16.4.2008, 10:27 | ||
Я контрольную сумму считаю так:
|
| Автор: Cergiy 16.4.2008, 10:46 |
| Poseidon, Вы думаете если заменить файл на строчку, ну там типы переменных поменять, оно будет работать? И это точно контрольная сумма LRC, а не CRC? А то, я вижу, многие даже и не слышали о контрольной сумме LRC. Благодарю за внимание. |
| Автор: Virtuals 16.4.2008, 13:24 |
| Cergiy, LCR это контрольная сумма - обычная циклическая сумма всех байт отображенная 2мя символами тоесть если комманда "061F01" то LCR = "26" и вся комманда выглядит так sendCMDa:= "061F0126" +#$0D +#$0A; |