2017-04-20 2 views
0

J'ai un microcontrôleur STM32F051 et je veux le programmer. J'ai cherché IDE que je pourrais utiliser et j'ai trouvé TRUESTUDIO que j'utilise. Je voulais savoir comment devrais-je faire pour envoyer le programme que j'ai fait dans le microcontrôleur. Ai-je besoin d'un programmeur spécifique (comme un appareil électronique pour Microchip Pics)? Quand je clique sur le bouton déboguer, j'obtiens une erreur "Error in initializing ST-Link device. Reason: Failed to connect to device. Please check power and cabling to target." Je ne suis pas sûr d'avoir mal compris quelque chose. Je télécharge le logiciel et j'ai sélectionné ma version spécifique de microcontrôleur, mais il semble qu'il ne le reconnaisse pas ...Comment programmer le microcontrôleur?

+1

Votre microcontrôleur est-il sur une carte? Est-ce un tableau d'évaluation du kit de découverte? – kkrambo

+0

Un couple de choses à essayer. Dans la configuration du débogueur, assurez-vous que l'interface est réglée sur SWI et non sur JTAG. Assurez-vous également d'avoir la bonne version du jeu ST-Link. Je pense qu'il ya deux options (bien que cela devrait probablement détecter automatiquement), une pour les anciens liens ST sans les ports de communication et une pour l'intégration plus récente activée. Vérifiez également les cavaliers sur la carte de développement sont configurés correctement. –

+0

J'ai tout vérifié, l'interface est réglée sur SWI, j'ai la bonne version de ST-link et les cavaliers sont configurés correctement. Pour information, mon microcontrôleur est sur un bord, c'est le tableau STM32FO-Discovery – user54517

Répondre

0

Oui, peu importe ce que le mcu vous aurez besoin d'une interface, que ce soit aussi simple qu'un usb connecteur lié à la puce, ou un en-tête de débogage en utilisant un autre périphérique ou de l'électronique. Pour une puce stm32 beaucoup de cartes de découverte et les cartes de nucléo (en particulier celles avec une extrémité séparable, vous n'avez pas à casser, il suffit de retirer certains cavaliers pour l'utiliser sur d'autres appareils (pas nécessairement ST)). Ces parties ont également un chargeur de démarrage en série que vous ne pouvez pas changer, donc il est toujours là, et peut parfois utiliser l'un des débogueurs de nucleo stlink (faire des recherches sur ceux qui offrent un uart virtuel, pas tous, moins cher que le dongles dédié stlink) ou dire un forum de discussion usb ftdi (moins de 2 $ sur ebay).

Il existe de nombreuses options pour programmer ces pièces comme dans un logiciel d'écriture, utiliser des outils GNU et rouler vos propres pilotes (assez facile la documentation est plutôt bonne), obtenir l'une des bibliothèques ST qu'ils offrent (gratuitement) ou si vous avez un Nucleo, vous pourriez utiliser mbed ou arduino pour développer.

Nous avons vraiment besoin d'en savoir plus sur le tableau sur lequel vous avez cette partie, est-ce juste une table de cassure ou comme demandé dans les commentaires avez-vous acheté un panneau de nucléo ou un panneau de découverte? Vous utilisez Linux, Windows ou Mac ou autre ou êtes flexible sur quel hôte?

+0

Si un conseil de nucléo, et je recommande d'en obtenir un ou plusieurs, ils commencent à 10 $. pour "programmer" le flash sur le tableau, vous faites glisser et déposer votre fichier binaire sur le système de fichiers virtuel (apparaît comme le pouce/lecteur flash lorsque vous branchez la carte). et si c'est .. –

+0

Si je me souviens bien d'utiliser Atollic Truestudio, vous pouvez facilement programmer et déboguer en utilisant le ST-Link intégré sur les cartes Nucleo et Discovery. Vous pouvez également le faire en utilisant une configuration Eclipse/GCC directe, mais c'est un peu plus difficile car vous devez configurer OpenOCD ce qui peut être pénible. IAR et Kiel travailleront avec ST-Link –

+0

Je trouve openocd assez facile avec le stlink, ymmv ... Oui, ça peut être une douleur en général en fonction de la cible/de l'interface. –