AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
29.03.2018, 20:03
|
|
Прописка
Регистрация: 06.03.2007
Сообщений: 144
Сказал спасибо: 22
Сказали Спасибо 10 раз(а) в 10 сообщении(ях)
|
Настройка RS-485
Здравствуйте,
есть задача прочитать данные из МК AVR по протоколу Modbus.
Есть инструкция,
Есть .map файл (кусок):
Код:
|
DSEG S_RES 00000100
DSEG S_DVC_NUM 0000012c
DSEG S_DN_LMT 00000132
DSEG S_SCALE 00000136
DSEG S_TIME_OUT 00000137
DSEG S_TMPR_BR 00000138
DSEG S_ADJ 0000028c
DSEG AVRG 0000028d
DSEG TMPR 00000292
DSEG TMPR1 00000295
DSEG TMPR2 00000298 |
Номер прибора 00
Пробую прочитать данные с помощью Terminal 1.9:
00A2018C
(RDTMPR1)
. Ответ не приходит. Может map -файл не правильные данные содержит?
В чем ошибка?
|
|
|
|
29.03.2018, 21:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Настройка RS-485
Сообщение от sanstan
|
Пробую прочитать данные с помощью Terminal 1.9:
00A2018C
|
Если это запрос, то ничего и не будет в ответ.
Где CRC?
|
|
|
Сказали "Спасибо" alvadep
|
|
|
29.03.2018, 21:34
|
|
Вид на жительство
Регистрация: 17.09.2009
Адрес: Ярославль
Сообщений: 384
Сказал спасибо: 43
Сказали Спасибо 152 раз(а) в 101 сообщении(ях)
|
Re: Настройка RS-485
Может здесь что подберете: Тестируем MODBUS RTU
|
|
|
|
30.03.2018, 01:53
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,247
Сказал спасибо: 11,166
Сказали Спасибо 3,855 раз(а) в 2,926 сообщении(ях)
|
Re: Настройка RS-485
sanstan, на стороне ПК таки нужно сделать таблицу с запросами, согласно приведённой документации. И копировать готовые битовые последовательности в терминал. Как альтернатива - простая программа чтения/записи в нужный COM порт с выводом на экран разобранного или в файл. Естественно не забывать генерировать CRC для запросов и проверять для ответов.
В множестве описаний реализации подмножестве Modbus есть разобранные алгоритмы.
Ну и конечно не забыть про правильное соединение и терминирование участников.
alvadep, там не только CRC нет, но и с длиной посылки проблема, согласно описанию.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
Последний раз редактировалось mike-y-k; 30.03.2018 в 20:52.
|
|
|
|
30.03.2018, 13:52
|
|
Прописка
Регистрация: 06.03.2007
Сообщений: 144
Сказал спасибо: 22
Сказали Спасибо 10 раз(а) в 10 сообщении(ях)
|
Re: Настройка RS-485
Скажите, а что за запрос A2h, если Read Input Register - 03h .
адрес прибора 0: 00h , функция 03h, адрес данных 0292h, длина: 02h, crc: так и не понял, как рассчитывается.
|
|
|
|
30.03.2018, 14:10
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,725
Сказал спасибо: 2,424
Сказали Спасибо 893 раз(а) в 580 сообщении(ях)
|
Re: Настройка RS-485
|
|
|
Сказали "Спасибо" baiderin
|
|
|
30.03.2018, 14:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Настройка RS-485
Сообщение от sanstan
|
Скажите, а что за запрос A2h, если Read Input Register - 03h .
|
Дело в том, что описанный протокол ни есть Modbus, следовательно все модбасовские примочки до одного места.
А CRC, судя по всему, в этом протоколе рассчитывается простым суммированием байт.
|
|
|
|
30.03.2018, 14:51
|
|
Прописка
Регистрация: 25.11.2006
Адрес: Харьков
Сообщений: 295
Сказал спасибо: 25
Сказали Спасибо 71 раз(а) в 60 сообщении(ях)
|
Re: Настройка RS-485
Сообщение от sanstan
|
есть задача прочитать данные из МК AVR по протоколу Modbus. Есть инструкция...
|
Из приложенной "инструкции" следует, что протокол обмена совсем не Modbus (как уже заметил alvadep)
Сообщение от sanstan
|
Пробую прочитать данные с помощью Terminal 1.9:
00A2018C
(RDTMPR1)
. Ответ не приходит...В чем ошибка?
|
Может в том, что в "инструкции" сказано, что "Пакеты имеют фиксированную длину 9 байт".
|
|
|
|
30.03.2018, 15:55
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.11.2010
Адрес: г. Дзержинск Нижегородская обл.
Сообщений: 1,690
Сказал спасибо: 130
Сказали Спасибо 1,089 раз(а) в 521 сообщении(ях)
|
Re: Настройка RS-485
Угу. Поле данных и CRC не заполнил. Естественно данный запрос будет отвергнут. И ... в документе не описано формирование CRC. А в живом железе это есть? Может логическим анализатором глянуть обмен?
|
|
|
|
30.03.2018, 15:57
|
|
Прописка
Регистрация: 06.03.2007
Сообщений: 144
Сказал спасибо: 22
Сказали Спасибо 10 раз(а) в 10 сообщении(ях)
|
Re: Настройка RS-485
Цитата:
|
Может в том, что в "инструкции" сказано, что "Пакеты имеют фиксированную длину 9 байт".
|
В инструкции сказано про запрос:
Цитата:
|
- поле номера прибора – 1 байт;
- поле типа запроса – 3 байта;
- поле данных – 4 байта;
- поле CRC (контрольная сумма) – 1 байт.
|
То есть надо запрос : 00h A2018Ch данные?? CRC?
что посылать в виде данных?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:18.
|
|