В последовательной связи означает, что скорость передачи данных означает, что мы должны использовать точную тактовую частоту или это диапазон частот, который мы можем использовать?
и если это точное значение, насколько оно должно быть? например, могу ли я использовать 555 в качестве часов цепи последовательной связи?
serial
clock-speed
baudrate
soundslikefiziks
источник
источник
Ответы:
Время должно быть достаточно точным, чтобы не рассыпаться до повторной синхронизации протокола.
Последовательный UART повторно синхронизирует каждый байт, и байт составляет около 10 бит (8 бит данных плюс начало и конец). Мы предполагаем, что наш UART ориентирован на середину каждого бита. Если все идеально и неточен только один конец, то есть разница между двумя концами ссылки составляет примерно 5%.
Однако:
Суть в том, что 1% ошибок на ваших часах почти наверняка в порядке. Ошибка 5% почти наверняка является проблемой. Между этими двумя цифрами это может быть или не быть проблемой в зависимости от общей картины.
Это высокий заказ для RC генератора. Допустим, ваш R имеет допуск 1%, а ваш C допуск 2%. Это дает примерно 3% допуска к постоянной времени в сети RC, и это до того, как вы начнете думать о любых ошибках, вносимых вашей микросхемой драйвера.
Итак, суть в том, что вы должны смотреть на кристаллический или керамический резонатор.
Что касается USB, у меня нет опыта анализировать с первых принципов, но https://www.silabs.com/community/interface/knowledge-base.entry.html/2004/03/15/usb_clock_tolerance-gVai говорит, что 1,5% для низкой скорости и 0,25% для полной скорости.
источник
В УАППАХ , обычно используемые в серийных системах RS - 232 типа работают путем отбора проб линии данных где - то в середине бита в соответствии с делением заранее определенной скоростью передачи данных базовой тактовой частоты. Таким образом, если отправленные данные и приемник не находятся на одной частоте, «точка выборки» будет перемещаться ближе к границе битового кадра в последовательных битах.
При обычном UART длина бита для байта составляет 10 или 11 бит. 1 старт, 8 данных и 1 или 2 стоповых бита. Половина блуждания 10-го бита приводит к ошибке 0,5 / 10 = 5%.
Однако в действительности ваш допуск меньше, чем тот, потому что вам также нужно добавить в задержку базового периода частоты, которая добавит смещение от переднего фронта начального бита. Чем выше ваша базовая частота, тем меньше эффект.
Что касается использования таймера 555 для этой цели, я бы не рекомендовал его, если вы не планируете ручную регулировку в цепи 555.
УСАПП с другой стороны , использует более сложный способ управления , что попытки синхронизировать передачу в принятых данных. Это может быть достигнуто за счет использования шаблона данных, который имеет встроенные тактовые импульсы, использования переданных тактовых импульсов или некоторой формы фазовой синхронизации с полученными фронтами данных. (Хотя, возможно, последний действительно псевдосинхронный.)
источник