Débit en bauds dans la communication série Arduino
Le codage Arduino est assez simple si l’on comprend le concept de base et a le don de la mise en œuvre logique. Ce concept discuté dans cet article sera lié au débit en bauds. La plupart des codeurs Arduino novices utilisent une valeur de débit en bauds spécifique pour tous leurs programmes et fonctions, mais ne savent pas pourquoi une valeur de 9600
est utilisée plutôt qu’un autre nombre. Qu’est-ce qui rend cette valeur spéciale et quelle est l’utilisation réelle du débit en bauds ?
Le débit en bauds est simplement le taux de changement de signal ou de symbole par seconde. C’est assez difficile à comprendre juste à partir de la définition. Une interprétation plus visuelle serait préférable.
Considérons le graphique à barres de la figure 1. Supposons que chaque bloc a une période de 1 seconde. Alors que la période est sur le point de se terminer, il y a un changement brusque de la valeur du graphique à barres. Pour la première barre, sa valeur augmente soudainement. Ce changement par seconde est connu sous le nom de débit en bauds, et le débit en bauds dans ce cas particulier est de 1. Le signal a changé une fois par seconde.
Pour ce nouveau graphique, considérons le mois de janvier au cours duquel le signal change deux fois jusqu’en février : cela représente un débit en bauds de deux. Cela signifie également qu’un port peut transmettre un maximum d’environ 2 bits par seconde. Si le débit en bauds augmente au-delà de 76800
unités, alors la longueur du fil doit être réduite pour des performances optimales.
Il existe une différence subtile entre le débit en bauds et le débit binaire. Le débit binaire est le débit de transmission de bits par seconde, tandis que le débit en bauds est le changement de signal ou de symbole par seconde. Le débit binaire peut être supérieur au débit en bauds, mais pas l’inverse. Les débits en bauds sont associés à l’électronique, en particulier aux projets de bricolage impliquant une carte de développement Arduino.
Pour l’utiliser comme fonction globale dans la programmation via C++, nous devons attribuer une valeur souhaitée avec #define BAUDRATE
pour une utilisation ultérieure. Si vous souhaitez envoyer et recevoir des données plus rapidement, vous devez augmenter la valeur en conséquence ; cependant, pour un microcontrôleur, la valeur typique est 9600
.
Maintenant, les critères de sélection dépendent de nombreux facteurs. Tout d’abord, si vous souhaitez augmenter le débit binaire, vous devez augmenter le débit en bauds.
Les critères de suréchantillonnage doivent adhérer pour correspondre aux débits en bauds ; même si l’on peut changer le taux de suréchantillonnage de 16X
à 8X
ou vice versa pour lequel des horloges à tolérance serrée sont nécessaires, une erreur peut exister. La réduction du débit augmentera l’erreur et le front de bit de départ peut ne pas correspondre au front de bit reçu.