Перейти к содержанию
    

Протокол для RS-485

Стоит задача по разработке контроллера интерфейса передачи данных RS-485. Стандарт EIA/TIA-485 описывает физический уровень и не регламентирует протокол передачи данных. Какие существуют рекомендации и предпочтения по выбору протокола при проектировании устройств? Существуют ли зарубежные аналоги данных контроллеров? Если есть таковые был бы рад увидеть даташит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какие существуют рекомендации и предпочтения по выбору протокола при проектировании устройств?
Рекомендация - не выдумывать свои собственные протоколы, а использовать уже имеющиеся. Например, ModBus как стандартный промышленный или Wake как имеющий документацию и библиотечные модули или ...

Существуют ли зарубежные аналоги данных контроллеров?
Каких таких "данных"? Вы ничего еще не дали. Ни описания, ни функционала, ни области применения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Суть как раз в том, что ни функционал ни область применения неизвестны заведомо. На данном этапе устроит даташит на любое устройство в составе которого есть контроллер приёма/передачи по RS-485 (регистровый состав, система команд)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Стоит задача по разработке контроллера интерфейса передачи данных RS-485. Стандарт EIA/TIA-485 описывает физический уровень и не регламентирует протокол передачи данных. Какие существуют рекомендации и предпочтения по выбору протокола при проектировании устройств? Существуют ли зарубежные аналоги данных контроллеров? Если есть таковые был бы рад увидеть даташит.

самое дубовое- MODBUS. Если к компьютерам/каналам связи с неизвестными задержками подключать хотите- то обязательно посмотрите MODBUS-ASCII, ну а если все детерминировано- то MODBUS-RTU.

 

А если еще не уверены про интерфейс- посмотрите CAN. тоже два провода. Больше возни сначала, но потом много вкусностей увидите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть вопрос касательно протокола MODBUS.

В спецификации на протокол оговаривается, что в RTU режиме сообщение должно начинаться и заканчиваться интервалом тишины — временем передачи не менее 3,5 символов при данной скорости в сети. Что в данном случае понимается под тишиной? Уровень логического "0"?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Длительный ноль - это break, а тишина есть просто отсутствие передачи данных.

Если правильно понимаю, то при реализации MODBUS RTU приёмника по интерфейсу RS-485 достаточно отследить стоп-бит последнего фрейма и запустить счётчик, который отсчитав время тех самых 3,5 символов начал бы отслеживать старт-бит нового фрейма?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Именно. У некоторых реализаций UART подобная возможность поддерживается аппаратно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...