HDLC - назначение бита PF в асинхронном сбалансированном режиме в двухсторонней одновременной связи - PullRequest
0 голосов
/ 12 мая 2018

Я пытаюсь написать протокол HDLC, работающий только в ABM (точка-точка) для проекта микроконтроллера.Я в основном полагаюсь на документ ISO 13239 click .

Связь должна работать в двухстороннем одновременном режиме.На данный момент я хочу подключить два USART к микро, работающие в двух контекстах HDLC на одном микро.У меня проблема с пониманием назначения битов P / F в ABM.

В полудуплексных каналах с режимом нормального ответа (NRM) принцип прост - первичная станция отправляет командный кадр (и) с P битами, установленными в последнем кадре, предоставляя разрешение вторичному устройству для ответа с кадром (ами) сF бит также установлен на последнем кадре.

В полнодуплексном канале первичной станции NRM отправляется команда с битом P, установленным в первом кадре, и может отправляться больше кадров.Когда вторичный сервер получает этот первый командный кадр с установленным битом P, он может отправлять ответные кадры с битом F, установленным в первом кадре.Целью установки бита P / F в первом кадре команды / ответа является скорость - первичный предоставляет разрешение на передачу команд на вторичный как можно быстрее, чтобы вторичный сервер мог отправлять ответ (ы), в то время как первичный все еще отправляет команды (двухстороннее одновременное).

В полнодуплексной ПРО ситуация для меня осложняется.Первичных вторичных отношений не существует, но обе станции являются комбинированными станциями, и обе могут отправлять команды и ответы в любое время (асинхронно).Вот пример обмена информацией в ПРО из документа ISO, о котором я упоминал ранее обмен информацией .Почему обе станции используют кадры с битом P / F.Разве обмен не выглядел бы так же без бита P / F? Когда и ПОЧЕМУ станция отправляет кадры с битом P / F в ABM ?

1 Ответ

0 голосов
/ 06 мая 2019

Как описано в разделе 5.4.3.1.3 ISO13239:

В ARM и ABM бит P, установленный на «1», должен использоваться для запроса ответ, при первой возможности ответа, с битом F, установленным в "1".

ПРИМЕЧАНИЕ. Например, если для основной / комбинированной станции требуется положительное значение подтверждение того, что конкретная команда была получена, она устанавливает бит P в команде «1». Это вызывает ответ от вторичная / комбинированная станция, как описано в 5.4.3.1.6.

(Ссылка на 5.4.3.1.6 должна быть опечаткой, так как этот раздел не существует ...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...