2017-05-05 1 views
-1

J'utilise le chien de surveillance dans mon système. S'il n'est pas rechargé dans les 5 secondes, il sera déclenché. Je voudrais voir la liste de code qui est faite avant la réinitialisation de chien de garde. Sans le débogueur connecté peut) connecter la liste des instructions dans mon code.STM32f429ZI journal de la pile d'appel sans débogueur

+0

Sur quel système d'exploitation êtes-vous? Pourquoi n'essaies-tu pas 'ptrace'? De plus, vous aurez toujours besoin des symboles de débogage pour identifier les fonctions sur le cadre de la pile. Si vous ne voulez pas que le débogueur soit toujours connecté, vous pouvez l'attacher * après * les déclenchements du chien de garde. –

+1

Bienvenue sur Stack Overflow! S'il vous plaît [modifier] votre question pour montrer [le code que vous avez jusqu'à présent] (http://whathaveyoutried.com). Vous devez inclure au moins un aperçu (mais de préférence un [mcve]) du code avec lequel vous rencontrez des problèmes, puis nous pouvons essayer d'aider avec le problème spécifique. Vous devriez aussi lire [ask]. –

+0

Vous pouvez toujours ajouter des affichages, comme 'print (" Flag ");' savoir jusqu'à où votre code est passé avant d'être arrêté. – Badda

Répondre

0

Il y a deux façons de le faire:

  1. Utilisez la sortie de débogage série et saisir les données en utilisant USART (autre micro)
  2. Acheter USB-> convertisseur série et d'utiliser l'une des UART à la sortie les données.
  3. Dans des circonstances extrêmes :) (par exemple, lorsque vous n'avez pas accès aux broches), utilisez les DEL (si disponibles) pour faire sortir les informations requises.
0

Il existe une solution simple mais peu coûteuse à votre problème. Cortex M4 core a un support pour les instructions de traçage. Par conséquent, vous devez vérifier si les signaux de traçage sont acheminés vers les broches (doit être grand paquet> 100 broches), après le démarrage activer le suivi et simplement connecter HW traceur, qui enregistrera toutes les instuctions que le noyau a exécutées.