Форум по микроконтроллерам: нужна помощь по алгоритму Modbus - Форум по микроконтроллерам

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

нужна помощь по алгоритму Modbus

#1 Пользователь офлайн   Bafyn 

  • Прибывший
  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 10 Август 18

Отправлено 10 Август 2018 - 15:24

Прошу знающих людей правильно ли я понимаю алгоритмом Modbus ANCII:
1)чтение из UART строки
2)разбиваем строку по два символа:
первые два символа - адрес устройства
следующие два символа - номер функции
следующие четыре символа - адрес регистра
следующие четыре символа - данные
последние два символа - CRC
3)проверяем соответствует ли полученный адрес данному устройству.
4)вызываем функцию по номеру (например 3 это Read Holding Registers, функции пишем сами, соответствие номерам задаем сами согласно стандарту).

Но вот с адресом регистра возникает проблема

предположим нам нужно прочитать значение PORTA, откуда берется его адрес? Я должен сам задать соответствие адреса имени регистра или взять его адрес из таблицы которая ниже в скриншотах?
если из таблицы, то как прочитать значение регистра зная его адрес?


Перечитал кучу как русскоязычных форумов так и англоязычных нигде этот вопрос не освещается, либо я не умею искать.
Прошу помочь, либо ткнуть носом туда, где я смогу найти эту информацию.
Заранее благодарю!!!

Прикрепленные изображения

  • Прикрепленное изображение: Безымянный.png

0

#2 Пользователь офлайн   Alex 

  • Убиватель МК
  • PipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 895
  • Регистрация: 15 Февраль 11

Отправлено 15 Август 2018 - 20:05

Цитата

как прочитать значение регистра зная его адрес?
Косвенная адресация.
Хотя, совершенно не понятно, какое отношение протокол Модбас может иметь к регистрам в микроконтроллере.
Не говорите что мне делать, и я не скажу куда Вам идти !
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей