Сообщение от
sea
Поэтому пытаюсь разобраться.
Чем тратяться микросекунды, центральным микроконтроллером? Реальным обменом наверное вообще другой МК занимается?
Время цикла нельзя устанавливать меньше времени выполнения программы. Сейчас статистику набираю по времени цикла ПЛК (установлено минимальное значение 0):
- минимальное 0,3 мс;
- максимальное 5,7 мс;
- среднее 0,5 мс.
Так какое установить?
Спасибо, получил подтверждение своим догадкам.
Скорость, понятно, что 115200 бит/с стабильна. А на счет запаздывания данных - не "1 мс".
Данные еще нужно принять/передать. Пусть программа вызывается 1 раз в 1 мс. Отсюда максимальное запаздывание 2 цикла, т.е. 2 мс. Передача данных на запрос одним пакетом 1028 бит занимает еще 9,43 мс. Итоговое запаздывание 11,43 мс.
На чтение ПЛК (Ведущий) одного регистра из Ведомого требуется 1,79 мс (206 бит), для записи - 1,88 мс. А может еще и ни с первой попытки обмен пройти.
Итого в сети RS-485 обмен происходит за 18,35 мс.
Вот вопрос стал: RS-232, RS-485 на одном микроконтроллере (не на центральном) реализованы или на разных?
Или все же не дополнительные МК, а отдельная перефирия (типа АЦП, ЦАП, ШИМ и т.д.) центрального микроконтроллера?