problème "power on reset"

Bonjour à tous,

J'ai un régulateur de chauffage, sur la base d'une carte seeeduino mega 2560, je rencontre un problème qui m'a occupé de longues heures sans trouver d'explications.

Le système est alimenté par une alimentation USB 1A, il utilise une douzaine de capteurs DS18B20, une dizaine de relais, un écran LCD, des sorties PWM, et le watchdog, j'utilise l'ide platformio sous ubuntu.

L'exécution ne se fait correctement qu'après un reset manuel, ou un reset réalisé par le moniteur série de platformio.

Le fait de débrancher et rebrancher le câble USB (sur PC ou alim), génère un plantage du programme.

Je ne peux pas investiguer depuis le moniteur série, vu que dés que je lance ce dernier le programme fonctionne sans pb.

Mon seul moyen d'investigation est d'activer une sortie pour voir jusqu’où se déroule le code, seulement le comportement est sans aucune logique, si j'enlève l'appel de la fonction depuis laquelle je ne reviens pas, le problème persiste dans une autre fonction.

J'ai bien entendu vérifié tous mes accès à des tableaux et structures pour vérifier que je ne jardine pas dans la RAM, mais je n'ai rien trouvé.

Si vous avez des idées pour m'aider à avancer elles seront bienvenu :wink:

Quelles sont les différences qu'il peut y avoir entre un reset manuel et un power on reset ?

Ma boule de cristal dit qu’il y a un débordement mémoire en ligne 42 et le fil rouge est mal branché...

Sinon 1A ça paraît très peu pour tout cela.

J'avais fait des essai avec une alim 2A et ça ne change rien.

Quel pourrait être l'influence du courant dispo sur un comportement différent entre reset manuel et power on reset ?

Je ne peux pas investiguer depuis le moniteur série, vu que dés que je lance ce dernier le programme fonctionne sans pb.

Pas tout à fait. Si tu branches un convertisseur USB / série sur le port série debug (RX TX + GND) ce sera possible.

Un petit schéma de l'interconnexion permettrait peut-être d'y voir plus clair.
Ainsi qu'un peu plus d'information sur les relais utilisés.

Quand même, si ça marche carte alimentée par l'USB. On peut se demander s'il n'y aurait pas un problème, au moins au démarrage, avec l'alimentation que tu utilises. Ou dans la façon d'alimenter la 2560.

oui ça sent le problème d'alim à plein nez en effet

Merci a tous pour vos avis.

j'ai fait des essais avec une autre alimentation qui délivre plus de courant, et c'est mieux, mais il y a quand même de rares démarrages ratés, en tout cas ce n'est plus systématique.

Au passage avec cette nouvelle alim un capteur ds18b20 retourne un crc erroné de temps en temps.

Je ne connais pas le mega mais j'ai eu des problèmes similaires avec certains modules uno standalone que je fabrique, je les ai résolus en mettant un condensateur de 100nF entre la pin de reset (1) et la masse en plus de la résistance de 10kΩ au +Vcc, ainsi en retardant légèrement le reset à la mise sous tension je n'ai plus jamais de problème de démarrage.

vince34:
Au passage avec cette nouvelle alim un capteur ds18b20 retourne un crc erroné de temps en temps.

problème de filtrage ? il faudrait regarder la tronche du 5V avec un oscillo

Bonsoir,

Voila la tête du 5V, 0,5 V/div / 1ms/div

Il y a une chute de tension d'environ 0.2V qui est synchro avec le pwm des led du rétroéclairage de l'écran LCD.

En fin de compte le 5V de l'alim 2A semble plus propre que celui de la 1A.

J'ai ajouter une aération au boitier qui était hermétique, car j'avais l'impression que la température du local avait un effet négatif.

Même si l'alimentation était une bonne piste, je vois rien de problématique.

Avec l'alim 1A, rétro éclairage du LCD au mini :

https://drive.google.com/file/d/1Wm40XRY0dztP7Nzm-uFC_in5gSR4w6bR/view?usp=sharing

Avec l'alim 1A, rétro éclairage du LCD au maxi :

https://drive.google.com/file/d/1sZw7HTKudI9VJFbUpQZOMSiKRS8nqK7M/view?usp=sharing

Avec l'alim 2A, rétro éclairage du LCD au mini :

https://drive.google.com/file/d/1xo1R9rAQypkygVh2bmF3RscNCijw4CEz/view?usp=sharing

Avec l'alim 2A, rétro éclairage du LCD au maxi :

https://drive.google.com/file/d/1exrE07JqS2fIfL7cDUrqeYjEeexd2Sk1/view?usp=sharing