Digit - Конечно нет. Протокол похож на тот, что описан выше
![Smile :-)](http://roboforum.ru/images/smilies/icon_smile.gif)
, но..
В нем отсутствует блок коммутации и блок индикации (мне кажеться), так как такой уровень визуализации меня не интересовал по двум причинам:
1. При большом кол-ве участников сети (например > 10) возникнет дополнительная нагрузка на протокол. Если конечно блок коммутации не являеться участником, а играет роль наблюдателя, но в таком случае его функции и так выполняються обшей (Мастер) системой (напреимер PC), которая по восможностям в 1000 раз превосходит любой контроллер
![Smile :-)](http://roboforum.ru/images/smilies/icon_smile.gif)
.....
2. Визуализацию каких-то промежутчных данных - это, на мой взгляд, можно исползовать лишь как "примочку" для наблюдений "поведения" отдельных участков системы, либо отдельного объекта. Гораздо целесообразней создавать подобные веши уже на высоком уровне, дабы не перегружать второстепенными вопросами "дохленькие" контроллеы.
И так о протоколе:
протокол имеет набор комманд:
1. Инизиализации и парамеметрирования протокола.
2. Управления объектами (задание, истенное значение)
Все участники системы имеют два адреса:
1. Собственный (заресервированные адреса, включая адрес "Мастера")
2. Обший - позволяет управлять всеми участниками сети одновременно (достоинство на лицо)
Обмен информации осуществляеться по принципу - Master -> Slave, Slave -> Мастер.
Физеческая основа протокола - асинхорнная передача данных с(или без) "адресным" битом.
С адресным битом легко - прохитал свой адрес значит принимаем
Без адресного бита - дело тяжелее. "Дергать всё время ухо в остро" - дело не шуточное
![Wink ;-)](http://roboforum.ru/images/smilies/icon_wink.gif)
- Надо байты считать или еше как-нибудь выкручиваться - не важхно, так как это слишком загружает контроллеры (постоянные прерывания - дестабилизируют работу "строгих" к дискретности регуляторов).
Не все контроллеры обладают UARTом с адресным битом
Но есть выход: использовать контроллеры - толко с такой опцией
И второе, самое главное НУЖНО ИСПОЛьЗОВАТь 7-БИТНЫЙ ПРОТОКОЛ, потому что когда дело дойдет до связи с ком-портом можно столкнуться с проблемой - в запасе толко 8-бит для передачи, а сгенерировать адресный бит (9-тый) просто так не выйдет....
И так... о скоростях передачи:
120µс - это не предел можно конечно и меньше (это при 1 Мбит на шине), но представь себе то, что Команда на контроллере выполняеться в среднем от 200 до 1000 нс. Т.е по макс. 1µs - это значит за 120 команд обработать, например, посылку из 4 байт (адрес, тип команды, данные, контрольная сумма) - рашифровать, проверитъ контрольная сумму,сохранить данные (как минимум); сформировать и послать ответ (например 4 байта).... я думаю, что 120 команд - это не много
![Smile :-)](http://roboforum.ru/images/smilies/icon_smile.gif)
....