ST-LINK la communication série est-elle possible?

8

J'utilise la carte de découverte STM32F4 et Atollic TrueStudio pour ARM Lite 3

Je voudrais transmettre des données de débogage à un PC à l'aide de printf et je ne trouve pas de moyen de le faire via STLink. Est-ce même possible? Il semble une fonctionnalité essentielle pour tout processus de débogage.

Edit: j'ai besoin d'utiliser Serial Wire Viewer, mais toujours pas de chance pour le faire fonctionner.

Maciej Kucia
la source
1
Si vous avez réussi, pourriez-vous publier un exemple, je rencontre le même problème et je n'ai pas eu de chance. J'ai écrit ma propre fonction printf qui utilise la fonction _write dans le fichier syscall de base.
JWL

Réponses:

4

OK, la façon de réaliser la communication dans Atollic TrueStudio pour ARM Lite (oui, cela fonctionne sous lite wersion depuis 3.0):

  1. Activer Serial Wire Viewer dans la configuration de débogage active
  2. Afficher la console SWV (sous perspective de débogage)
  3. Ouvrez les paramètres de la visionneuse de fils série (premier bouton dans la fenêtre de la console SWV)
  4. Activer le port de stimulation ITM 0
  5. Activer le bouton Démarrer / Arrêter la trace dans la console SWV (deuxième bouton)
  6. Utiliser la fonction ITM_SendChar
  7. Profitez du débogage des chaînes!
Maciej Kucia
la source
Cela fonctionne également sur Keil uCVision avec toute la famille ulink jtag.
Katte
0

Il utilise Crossworks .. Dans crossworks, nous utilisons dbg_printf mais c'est lent, soyez averti.

Ktc
la source
0

Pour tous les utilisateurs de CrossWorks: la semi-hébergement fonctionne mais est lente. C'est parce que les travaux croisés ne transmettent pas les données d'impression via SWO mais plutôt via l'interface JTAG / SWD. Il arrête uC et lit les données du registre pour les afficher. Soyez conscient que uC s'arrête lorsque vous utilisez la fonction printf et que le débogueur est déconnecté.

ciostek223
la source