Taxa de Baud na comunicação serial do Arduino

Yousef Zahid 15 fevereiro 2024
Taxa de Baud na comunicação serial do Arduino

A codificação do Arduino é bastante simples se alguém entender o conceito básico e tiver o talento para implementação lógica. Este conceito discutido neste artigo estará relacionado à taxa de Baud. A maioria dos programadores Arduino novatos usa um valor de taxa Baud específico para todos os seus programas e funções, mas não sabem por que um valor de 9600 é usado em vez de outro número. O que torna esse valor especial e qual é o uso real da taxa Baud?

A taxa de transmissão é simplesmente a taxa de mudança de sinal ou símbolo por segundo. É muito difícil entender apenas pela definição. Uma interpretação mais visual seria melhor.

Analogia da taxa de transmissão

Vamos considerar o gráfico de barras da figura 1. Suponha que cada bloco tenha um período de 1 segundo. Como o período está prestes a terminar, ocorre uma mudança abrupta no valor do gráfico de barras. Para a primeira barra, seu valor aumenta repentinamente. Essa mudança por segundo é conhecida como taxa de bauds, e a taxa de bauds neste caso particular é 1. O sinal mudou uma vez por segundo.

Analogia da taxa de transmissão

Para este novo gráfico, considere o mês de janeiro em que o sinal muda duas vezes até fevereiro: isso representa uma taxa de transmissão de dois. Também significa que uma porta pode transmitir no máximo cerca de 2 bits por segundo. Se a taxa de transmissão aumentar além das unidades 76800, o comprimento do fio precisa ser reduzido para um desempenho ideal.

Há uma diferença sutil entre a taxa de transmissão e a taxa de bits. A taxa de bits é a taxa de transmissão de bits por segundo, enquanto a taxa de bauds é o sinal ou as mudanças de símbolo por segundo. A taxa de bits pode ser maior do que a taxa de transmissão, mas não vice-versa. As taxas de transmissão estão associadas à eletrônica, especialmente aos projetos DIY que envolvem a placa de desenvolvimento Arduino.

Para usá-lo como uma função global na programação via C++, precisamos atribuir um valor pretendido com #define BAUDRATE para uso posterior. Se você deseja enviar e receber dados em uma taxa mais rápida, deve aumentar o valor de acordo; entretanto, para um microcontrolador, o valor típico é 9600.

Agora, os critérios de seleção dependem de muitos fatores. Em primeiro lugar, se você quiser aumentar a taxa de bits, deverá aumentar a taxa de bauds.

Os critérios de sobreamostragem devem aderir às taxas de transmissão; embora seja possível alterar a taxa de sobreamostragem de 16X para 8X ou vice-versa, para os quais são necessários relógios de tolerância apertada, pode haver um erro. Reduzir a taxa aumentará o erro e a borda do bit inicial pode não coincidir com a borda do bit recebido.

Artigo relacionado - Arduino Serial