Скорость передачи в последовательной связи Arduino

Yousef Zahid 28 Июнь 2021
Скорость передачи в последовательной связи Arduino

Кодирование Arduino довольно просто, если человек понимает основную концепцию и обладает способностью к логической реализации. Эта концепция, обсуждаемая в этой статье, будет связана со скоростью передачи данных. Большинство начинающих кодировщиков Arduino используют определенное значение скорости передачи для всех своих программ и функций, но не знают, почему используется значение 9600, а не другое число. Что делает это значение особенным и каково фактическое использование скорости передачи данных?

Скорость передачи - это просто скорость изменения сигнала или символа в секунду. Это довольно сложно понять только по определению. Лучше было бы более наглядное толкование.

Аналогия скорости передачи

Давайте рассмотрим гистограмму на рисунке 1. Предположим, каждый блок имеет период в 1 секунду. Поскольку период приближается к концу, происходит резкое изменение значения столбчатой ​​диаграммы. Для первого бара он внезапно увеличивается в цене. Это изменение в секунду известно как скорость передачи, и в данном конкретном случае скорость передачи данных равна 1. Сигнал изменяется один раз в секунду.

Аналогия скорости передачи

Для этого нового графика рассмотрим месяц январь, в котором сигнал меняется два раза до февраля: это соответствует скорости передачи данных, равной двум. Это также означает, что порт может передавать максимум около 2 бит в секунду. Если скорость передачи превышает 76800 единиц, то для оптимальной производительности необходимо уменьшить длину провода.

Между скоростью передачи и скоростью передачи данных есть небольшая разница. Битовая скорость - это скорость передачи битов в секунду, а скорость передачи - это изменение сигнала или символа в секунду. Битовая скорость может быть больше, чем скорость в бодах, но не наоборот. Скорость передачи связана с электроникой, особенно с проектами DIY, в которых используется плата разработки Arduino.

Чтобы использовать его как глобальную функцию в программировании через C++, нам нужно присвоить предполагаемое значение с помощью #define BAUDRATE для использования в дальнейшем. Если вы хотите отправлять и получать данные с большей скоростью, вы должны соответственно увеличить значение; однако для микроконтроллера типичное значение - 9600.

Теперь критерии выбора зависят от множества факторов. Прежде всего, если вы хотите увеличить скорость передачи данных, вы должны увеличить скорость передачи данных.

Критерии передискретизации должны соответствовать скорости передачи данных; Даже если можно изменить частоту передискретизации с 16X на 8X или наоборот, для чего требуются часы с жесткими допусками, может существовать ошибка. Уменьшение скорости увеличит ошибку, и край начального бита может не совпадать с фронтом полученного бита.