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

Кодирование Arduino довольно просто, если человек понимает основную концепцию и обладает способностью к логической реализации. Эта концепция, обсуждаемая в этой статье, будет связана со скоростью передачи данных. Большинство начинающих кодировщиков Arduino используют определенное значение скорости передачи для всех своих программ и функций, но не знают, почему используется значение 9600
, а не другое число. Что делает это значение особенным и каково фактическое использование скорости передачи данных?
Скорость передачи - это просто скорость изменения сигнала или символа в секунду. Это довольно сложно понять только по определению. Лучше было бы более наглядное толкование.
Давайте рассмотрим гистограмму на рисунке 1. Предположим, каждый блок имеет период в 1 секунду. Поскольку период приближается к концу, происходит резкое изменение значения столбчатой диаграммы. Для первого бара он внезапно увеличивается в цене. Это изменение в секунду известно как скорость передачи, и в данном конкретном случае скорость передачи данных равна 1. Сигнал изменяется один раз в секунду.
Для этого нового графика рассмотрим месяц январь, в котором сигнал меняется два раза до февраля: это соответствует скорости передачи данных, равной двум. Это также означает, что порт может передавать максимум около 2 бит в секунду. Если скорость передачи превышает 76800
единиц, то для оптимальной производительности необходимо уменьшить длину провода.
Между скоростью передачи и скоростью передачи данных есть небольшая разница. Битовая скорость - это скорость передачи битов в секунду, а скорость передачи - это изменение сигнала или символа в секунду. Битовая скорость может быть больше, чем скорость в бодах, но не наоборот. Скорость передачи связана с электроникой, особенно с проектами DIY, в которых используется плата разработки Arduino.
Чтобы использовать его как глобальную функцию в программировании через C++, нам нужно присвоить предполагаемое значение с помощью #define BAUDRATE
для использования в дальнейшем. Если вы хотите отправлять и получать данные с большей скоростью, вы должны соответственно увеличить значение; однако для микроконтроллера типичное значение - 9600
.
Теперь критерии выбора зависят от множества факторов. Прежде всего, если вы хотите увеличить скорость передачи данных, вы должны увеличить скорость передачи данных.
Критерии передискретизации должны соответствовать скорости передачи данных; Даже если можно изменить частоту передискретизации с 16X
на 8X
или наоборот, для чего требуются часы с жесткими допусками, может существовать ошибка. Уменьшение скорости увеличит ошибку, и край начального бита может не совпадать с фронтом полученного бита.