Le protocole

Le port série (UART) est un port de communication qui était très répandu sur les PC jusqu'il y a peu. Il est par contre présent sur la totalité des systèmes embarqués. C'est un protocole série, qui permet de transmettre des trames de bits les unes à la suite des autres. Pour que la communication fonctionne, les deux dispositifs désirant communiquer ensemble doivent se mettre d'accord sur un certain nombre de points :

  • le nombre de bits par trame : généralement 8, mais ça peut aller de 5 à 11.
  • la durée de chaque bit : pour une communication lente mais sûre, on utilise traditionnellement une vitesse de 9600 bps (bits/secondes), pour une transmission rapide on transmet à 115200 bps. D'autres vitesses sont possibles (de 1200 bps à 10 Mbps).
  • la présence ou non d'un bit de parité (paire qu'on note E, ou impaire qu'on note O), permettant de détecter certaines erreurs de transmission. Si on ne met pas de bit de partité, ce qui est le cas la plupart du temps, on note ça N.
  • la durée du "bit" de stop (le bit de fin de trame) : 0.5, 1, 1.5, ou 2 bits. Généralement 1 bit.

L'état de repos est l'état haut (VCC).

Le format standard d'une trame au format 115200 8N1 (8 bits de données, pas de parité, 1 bit de stop, 115200 bps, soit 115200 8N1 en abrégé) est celui-ci :

Trame UART

Le périphérique se chargeant de formater les trames et de les envoyer / les réceptionner est appelé UART. Dans un microcontrôleur standard, il en existe de 1 à 4 (voire plus).