Составители:
64
завершению отправки или приема всей посылки либо формируется
пользовательский флаг, отрабатываемый в основном цикле программы,
либо сразу вызывается подпрограмма обработки сообщения.
В общем случае посылка по последовательному каналу состоит из
управляющих байтов (синхронизация посылки, адресов отправителя и
получателя, контрольной суммы и пр.) и собственно байтов данных.
Протоколов существует множество и можно придумать еще больше,
но лучше пользоваться наиболее употребительными из них. Одним из
стандартных протоколов последовательной передачи является MODBUS
,
его поддержку обеспечивают многие производители промышленных
контроллеров.
Программные методы борьбы со сбоями
Для повышения надежности связи обязательно нужно предусмотреть
программные методы борьбы со сбоями. Их можно условно разделить на
две группы: защита от рассинхронизации и контроль достоверности.
1). Защита от рассинхронизации. Несмотря на защитное смещение,
сильная помеха может пробиться в линию без активных передатчиков и
нарушить правильную последовательность приема посылок. Тогда
возникает необходимость первой же нормальной посылкой вразумить
принимающие устройства и не дать им принять помеху за посылку.
Делается это с помощью синхронизации кадров (активная пауза) и
синхронизации посылок (преамбула).
Защита от рассинхронизации кадров.
Обязательная мера! Все
последующие меры синхронизации посылок имеют смысл только
совместно с этой (рис.2.18). Помеха ложным старт-битом может сбить
правильный прием кадров последующей посылки. Чтобы вернуться к
верной последовательности, нужно сделать паузу между включением
приемопередатчика на передачу и посылкой данных. Все это время
передатчик удерживает в линии высокий уровень, через который помехе
трудно пробиться (активная пауза). Паузы длительностью в 1 кадр на
данной скорости связи (10-11 бит) будет достаточно для того, чтобы любое
устройство, принимавшее помехи приняло стоп-бит. Тогда следующий
кадр будет приниматься с нормального старт-бита.
Рис. 2.18. Защита от рассинхронизации кадров
Того же эффекта можно добиться передачей символа FFh перед
Страницы
- « первая
- ‹ предыдущая
- …
- 62
- 63
- 64
- 65
- 66
- …
- следующая ›
- последняя »
