Utilisation

Les PC portable ne sont plus équipés de port série, et les PC nécessitent un adaptateur de tension (pour des raisons historiques, l'état haut correspond à une tension de -9 à -15V, et l'état bas à une tension de +9 à +15V), ce qui n'est pas pratique.

Heureusement, la sonde JTAG intégrée à la carte de développement intègre un pont UART / USB. Lors du branchement du câble USB sur le PC pour débugger la carte, deux périphériques sont automatiquement créés par Linux :

  • celui qui permet de communiquer avec le driver de sonde et gdb,
  • un port série "virtuel", avec lequel tout se passe comme si on était directement branché sur l'UART1 du microcontrôleur. Ce port série, sous Linux, a pour nom /dev/ttyACM0.

Attention : pour ceux qui ont un PC personnel sous Ubuntu, un programme est installé par défaut qui peut empêcher la communication avec ce port série : modem-manager. Pensez à le supprimer en tapant sudo apt-get purge modemmanager.

Pour communiquer avec le port série depuis le PC, plusieurs programmes existent dont :

  • putty : interface graphique, pratique, installé sur toutes les stations des salles de TP
  • tio : purement textuel, pratique, installé sur toutes les stations des salles de TP
  • picocom, cu, tip, screen, kermit, etc.
  • ou le plugin de vscode serial monitor

Nous vous conseillons tio ou putty. Lorsque vous les lancez, réglez les sur :

  • port série : /dev/ttyACM0
  • vitesse : 115200
  • 8 bits de données
  • pas de contrôle de flux (ni logiciel ni matériel)
  • 1 bit de stop
  • pas de parité

Une fois lancé, chaque caractère tapé est envoyé à l'UART du microcontrôleur, et vice-versa.

❎ Pour activer le port série virtuel de votre carte, tapez les commandes suivantes une fois pour toutes :

JLinkExe -device STM32L475VG -if SWD -autoconnect 1 -speed auto
...
Cortex-M4 identified.
J-Link>vcom enable
...
J-Link>exit

❎ Pour tester que tout fonctionne bien, vous pouvez télécharger l'exécutable hello.gz et l'exécuter. Si vous ne voyez rien, vérifiez vos paramètres !