Автоматическое определение скорости передачи данных
![]() | Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( Март 2013 г. ) |
Автоматическое определение скорости передачи данных ( ABR , autobaud ) относится к процессу, с помощью которого принимающее устройство (например, модем ) определяет скорость, уровень кода, стартовый бит и стоповые биты входящих данных путем проверки первого символа , обычно заранее выбранного знака. -on символ ( syncword ) при соединении UART . ABR позволяет принимающему устройству принимать данные от различных передающих устройств, работающих на разных скоростях, без необходимости предварительного установления скорости передачи данных.
Процесс
[ редактировать ]Во время процесса автоматической передачи данных скорость принятого потока символов определяется путем проверки полученного шаблона, его синхронизации и длины стартового бита. Этот тип механизма определения скорости передачи данных поддерживается многими аппаратными микросхемами, включая процессоры, такие как STM32. [1] MPC8280, MPC8360 и так далее.
Когда длина начального бита используется для определения скорости передачи, необходимо, чтобы символ был нечетным, поскольку UART сначала отправляет младший бит — эта конкретная схема порядка битов называется «с прямым порядком байтов» . [2] Часто используются символы «a» или «A» (0x61 или 0x41). Например, MPC8270 SCC пытается определить длину стартового бита UART для автоматической скорости передачи данных.
Многие протоколы начинают каждый кадр с преамбулы, состоящей из чередующихся битов 1 и 0, которые можно использовать для автоматического определения скорости передачи данных. Например, TI PGA460 использует байт синхронизации U (0x55) для автоматического определения скорости передачи данных, а также синхронизации кадров . [3] то же самое касается и заголовка LIN ( Local Interconnect Network#Header ). Например, протокол FlexWire на основе UART начинает каждый кадр с байта синхронизации «U» (0x55) . Приемники FlexWire используют синхробайт для точной установки тактовой частоты UART без использования высокоточного генератора. [4] Например, преамбула Ethernet содержит 56 бит чередующихся битов 1 и 0 для синхронизации тактовых импульсов.
Поддерживать
[ редактировать ]Большинство модемов, представленных в настоящее время на рынке, поддерживают автоскорость. Перед получением каких-либо входных данных большинство модемов используют для вывода скорость передачи данных по умолчанию 9600 бод. Например, следующие модемы были проверены на автоматическую скорость передачи данных и скорость передачи данных по умолчанию 9600:
- Факс-модем последовательного контроллера USRobotics USR5686G 56K
- Hayes V92 Внешний модем
- Микроком ДескПорте 28.8P
Скорость передачи данных модемов регулируется автоматически после получения входных данных в процессе автоматической передачи данных.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ STM32 USART автоматическое определение скорости передачи данных
- ^ «MIT — 6.111 Лаборатория вводных цифровых систем» (PDF) . MIT 6.111 Осень 2019 г. Проверено 15 июля 2023 г.
- ^ Раздел «Поле синхронизации» «Процессор ультразвуковых сигналов и драйвер преобразователя PGA460» . 2017. п. 35.
- ^ Техасские инструменты. «TPS929121-Q1 12-канальный автомобильный драйвер высокого напряжения 40 В с гибким проводом» . 2021. п. 37 и стр. 39.
- «17.2 Работа в автоматическом режиме на UART в справочном руководстве семейства MPC8280 PowerQUICC™ II» http://www.nxp.com/files/netcomm/doc/ref_manual/MPC8280RM.pdf
- «Автоматическое определение скорости передачи данных на MSP430» https://web.archive.org/web/20161026080239/http://www.ti.com/lit/an/slaa215/slaa215.pdf
- «Как реализовать функцию автоматического определения скорости передачи данных на Cortex-M3» https://stackoverflow.com/q/38979647
- «Проблема с UART mpc8270 SCC2» https://community.nxp.com/message/906833