-
- Я бы подумал насчет упрощенной реализации PPP. Считать что соединение уже установлено и параметры уже согласованы. Механизм окна можно использовать для приостановки передачи одной стороной для ожидания подтверждения и/или данных от другой стороны. И вообще стоит посмотреть идеи лежащие в основе HDLC, LAPB и большого семейства похожих на них протоколов. - ЫЫyкпy(20.08.2021 09:42)
- периодически запрашивай команду у командира да и все - LordN(20.08.2021 05:45)
- Приём в контроллере держать постоянно включенным. Во время передачи
контроллер сравнивает прием со своей передачей, при несовпадении
контроллер прекращает передачу на время, необходимое консоли для
захвата шины. Если передачи от консоли нет (или это была помеха на
шине) - контроллер возобновляет передачу. Как-то так - argus98(31.07.2021 16:12)
- Только если второй мастер не сможет "передавить" линию, то сессия никогда не состоится. - rezident(31.07.2021 16:42)
- во-во, только что написал. Попробую пожалуй. - std_engineer(31.07.2021 16:24)
- Прога на контроллере своя? Он как мастер не может периодически
обращаться по адресу консоли и при ее ответе забирать команды, если
они есть? - Harry(31.07.2021 15:34)
- Своя. Вывод GPIO заведен на DE+nRE вх. п-п. ADM3493. По адресу
консоли это как? Но идею понял, контроллеру периодически передавать
"есть чё? слушаю..." и дожидаться либо ответа "нет ничего", либо
таймаута, либо посылки от PC. Смущает то что PC (windows +
приложение в usermode) в целом неповоротливая чтобы работать быстро
ответно, протокольно в реальном времени. И еще это делает
невозможным применение обычной терминалки. - std_engineer(31.07.2021 16:01)
- Поможет активный шлюз, на МК. По 485 будет общаться в реалтайме. Обмен с ПК медленнее. - Harry(31.07.2021 19:23)
- Может для такого случая 4-проводный RS485 подойдет? Передаваемые и принимаемые данные по разным парам идут и мешать друг другу не будут. А на примере терминала можно вылавливать какие-нибудь специфичные "ESC-последовательности" которые будут переводить его (точнее ее - программу терминала) из режима данных в командный режим. Как в модемах. - rezident(31.07.2021 16:51)
- Своя. Вывод GPIO заведен на DE+nRE вх. п-п. ADM3493. По адресу
консоли это как? Но идею понял, контроллеру периодически передавать
"есть чё? слушаю..." и дожидаться либо ответа "нет ничего", либо
таймаута, либо посылки от PC. Смущает то что PC (windows +
приложение в usermode) в целом неповоротливая чтобы работать быстро
ответно, протокольно в реальном времени. И еще это делает
невозможным применение обычной терминалки. - std_engineer(31.07.2021 16:01)
- Поскольку в RS485 аппаратный арбитраж и/или мультимастер не
предусмотрен, то остается только играть с временными слотами для вставки команд другого мастера. - rezident(31.07.2021 14:54)
- Интуитивно догадываюсь что правильно это побивка на мелкие
временные слоты с договорным обменом. Но это влечет за собой
усилия, а у меня не так много времени до часа X. std_engineer(415 знак., 31.07.2021 16:22)
- Можно попытаться синнхронизироваться с мастером. Tyмблep(345 знак., 19.08.2021 17:35)
- "Задача об укладке рюкзака" :) Но если есть возможность
организовать поддержку с мастера, то вполне можно организовать сеть
с передачей маркера. - Cкpипaч(19.08.2021 17:41)
- Классика Tyмблep(55 знак., 19.08.2021 23:25)
- "Задача об укладке рюкзака" :) Но если есть возможность
организовать поддержку с мастера, то вполне можно организовать сеть
с передачей маркера. - Cкpипaч(19.08.2021 17:41)
- Не надо $FF,$FF,$FF, лучше что-нибудь послучайнее и подлиннее. Ну и контроллер тоже не должен постоянно держать линию в передаче, нужны хотя бы небольшие зазоры в передаче пакетов - тогда перехват будет гарантирован. Проверено практикой. - argus98(31.07.2021 19:47)
- Не очень надежно. Так можно никогда не дождаться, если другой драйвер (или его питание) "слабенький" окажется. Может есть возможность, кроме собственно лога, иногда передавать запросы ко второму мастеру? Если второй вдруг ответил, то на определенное время прекращать выдачу данных и ждать запроса от второго мастера. - rezident(31.07.2021 16:46)
- Можно попытаться синнхронизироваться с мастером. Tyмблep(345 знак., 19.08.2021 17:35)
- Интуитивно догадываюсь что правильно это побивка на мелкие
временные слоты с договорным обменом. Но это влечет за собой
усилия, а у меня не так много времени до часа X. std_engineer(415 знак., 31.07.2021 16:22)