paf_prod a écrit : ↑dim. 23 02, 2020 20:56
J'avoue que je ne comprend pas du tout.
Bonjour,
T'inquiète pas, j'ai eu aussi un comportement très louche avec un module STM32 discovery.
![Confused :?](./images/smilies/icon_confused.gif)
Ca fait un moment que ca m'est arrivé et depuis c'est résolu, mais je me rappelle plus exactement comment j'avais fait
Je pense que c'est lié à un problème d'alimentation du module discovery.
Dans mon cas, j'utilisais non pas un shield, mais un câblage "full experimental" avec des connexions Dupont et une alim externe bricolée. J'avais mon module relié aux LEDS via le hub75, alimentés en autonomes, et pour le STM32 discovery, j'avais soudé direct dessus un jack alim sur les broches +5 et GND (sur les broches des connecteurs, coté boutons noir/bleu).
Ce qui revient au même sur le shield, où le module est alimenté par ces connecteurs, mais en plus propre.
En théorie, ca devait marcher de suite... sauf qu'en pratique NON : j'étais obligé d'avoir le USB mini de connecté au PC pour que ca fonctionne.
En fait, il faut comprendre que le module STM32 discovery est en réalité composé de deux sections distinctes:
- un CPU STM32F407, qui peut communiquer via la prise CN5 (µUSB) et c'est par là que passe le dialogue avec VPinMame en virtuel.
- un module ST-LINK intégré, qui est le module de programmation/debug standard chez ST.
Ce module ST-LINK comporte lui même un petit CPU STM32F103. C'est exactement ce que l'on trouve dans les clés USB externes ST-LINK, sauf que là, les broches "jtag" (interface de programmation SWD) sont reliées en interne au STM32F407. Il utilise la prise mini-usb CN1 pour communiquer avec le PC (logiciel ST-LINK) et ne sert que pour la programmation du firmware. La particularité, c'est que cette prise mini-USB sert aussi pour alimenter le module complet et répond à la norme USB-OTG (On-The-Go).
Le schéma de l'alim USB-OTG est en page 30 de la doc du STM32-discovery.
Je n'ai toujours pas tout compris au principe de cette alim, mais il semble que le truc fonctionne plus ou moins en boucle avec un système d'armement/verrouillage, construit avec un circuit de contrôle STMPS2141, qui allume les LED 8 (rouge) ou 7 (verte). En gros, on dirait que le truc s'arme et reste ensuite activé.
Dans mon cas, je pensais même que le STMPS2141 avait cramé, mais non, au final il fonctionnait correctement.
En revanche, ce qui n'est pas très cohérent, c'est qu'en cas d'alimentation externe la LED rouge va s'allumer, comme s'il y avait un problème. Mais non, je confirme que une fois que le module est correctement alimenté via les connecteurs (shield), on a bien la LED D8 rouge allumée - et le module marche très bien.
Comme au départ ca ne fonctionnait pas correctement et que je devais brancher la prise mini-usb pour que ce soit alimenté, j'ai décidé de refaire mes soudures.
J'ai juste ressoudé mon jack alim. Celui-ci était connecté sur l'extrémité du connecteur, là où tu vois le +3v, le +5v, et le gnd.
Si on regarde le connecteur, on voit qu'a ce niveau les deux rangées sont identiques (deux fois gnd, deux fois 5v et deux fois 3v).
Au départ, j'avais connecté mon jack, uniquement sur une broche gnd et sur une 5v (sur la rangée intérieure).
Quand j'ai refait la soudure, j'ai gardé la connection 5v sur une seule broche (coté intérieur), mais par contre j'ai relié les deux broches de masse (à l'extrémité du connecteur)
Et là miracle, le module s'est mis à marcher
Alors je ne sais pas si cela venait d'une mauvaise soudure de ma part, ou si celles du module étaient cassées et qu'en chauffant ça les a réparé, ou encore si les deux broches de masse ne sont pas reliées entre elles en interne ??? mais depuis que j'ai refait le branchement d'alim, le module fonctionne correctement.
Donc je pense que tu dois avoir un soucis d'alimentation du module discovery via les connecteurs du shield.
Essaye de faire un pont de soudure entre les deux broches de masse sur le connecteur du module STM32 discovery (c'est facile et ça ne change rien au principe).
J'ai pas tout compris non plus, sauf que le truc du USB-OTG ça peut mettre bien le bazar
Et si je me souviens bien, j'avais aussi le même comportement bizarre que toi. Au départ il fallait que le micro-USB soit branché, mais une fois le module démarré, on pouvait l'enlever et l'alim externe était suffisante pour alimenter le tout.