Pagina 1 di 2

Reset STM32 dopo power failure

MessaggioInviato: 4 apr 2022, 14:29
da Andrea96
Ciao a tutti O_/ ,

Sto lavorando a un progetto su stm32 e sto avendo alcuni problemi con la gestione del power failure della alimentazione.

Praticamente nel progetto su cui sto lavorando c'è un hardware che rileva un abbassamento della tensione di alimentazione al di sotto dei 18V, dunque a livello firmware viene generato un interrupt per salvare dei dati prima di che un segnale nReset disabiliti completamente il microcontrollore.

Per verificare il corretto funzionamento scollego la alimentazione dalla scheda su cui è inserito il microcontrollore. Tutto sembra funzionare correttamente fino a quando mi accorgo che il comportamento è differente se cambio una variabile in gioco, ovvero il punto in cui scollego la alimentazione.

Infatti, fra la 230V e la mia scheda c'è un alimentatore a 30V e se scollego a valle di questo alimentatore tutto funziona, mentre se scollego a monte niente.

Ho dunque fatto delle verifiche con l'oscilloscopio, collegandomi con una sonda a una uscita che alzo appositamente non appena entro nella routine di interrupt e con un'altra sonda al segnale nReset. In questo modo vedo la differenza di arrivo dei due segnali.
Come mi aspettavo se tolgo la 30V ho 270ms di differenza, mentre se tolgo la 230V ho solo 111ms, non sufficienti per quello che devo fare a quanto pare.

Qualcuno riesce a immaginare come mai accade questa cosa?

Re: Reset STM32 dopo power failure

MessaggioInviato: 4 apr 2022, 16:26
da stefanopc
Che tipo di alimentatore?
Questo alimentatore alimenta altri dispositivi?
Si potrebbe mettere un piccolo capacitor per portare a circa un secondo il tempo per cui il micro rimane alimentato anche in mancanza di tensione.
Ciao

Re: Reset STM32 dopo power failure

MessaggioInviato: 4 apr 2022, 17:01
da Andrea96
Ciao Foto Utentestefanopc,

è un alimentatore per dispositivi che lavorano su bus KNX da 160mA che fa 230V->30V.

Ho notato che scollegando la 230V i segnali che cattura con l'oscilloscopio arrivano anche in ritardo, forse causa degli effetti capacitivi aggiuntivi.

Re: Reset STM32 dopo power failure

MessaggioInviato: 4 apr 2022, 19:11
da elfo
- se apri SW2 -> OK
- se apri SW1 -> NOK

E' cosi?

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 4:38
da EcoTan
Mettere un diodo subito prima di SW2?

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 8:07
da boiler
EcoTan ha scritto:Mettere un diodo subito prima di SW2?

Il diodo va dopo e solo sulla linea che va al microcontroller: il brown-out detector deve rivelare la caduta di tensione il piú presto possibile e non va quindi "protetto".

Boiler

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 8:31
da EcoTan
La proposta è la mia e il diodo, se vogliamo fare la mia prova, va messo dove dico io.
Se poi si tratta di apparecchiature certificate può darsi che anche l'aggiunta di un semplice diodo costituisca un problema, intanto si può provare.
L'idea è quella che l'alimentatore, in ipotesi, contenga qualcosa che provoca un rapido shutdown, mentre magari a valle di SW2 c'è qualche capacità che rallenta la caduta della tensione.

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 8:42
da Andrea96
Esatto Foto Utenteelfo è esattamente così !

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 8:51
da Andrea96
Ciao Foto UtenteEcoTan, grazie per la risposta.
Non sono ancora praticissimo a livello hardware, puoi spiegarmi come può il diodo risolvere il problema?

Re: Reset STM32 dopo power failure

MessaggioInviato: 5 apr 2022, 9:02
da lelerelele
A parte il diodo che può funzionare,
io mi preoccuperei di dare al micro una alimentazione dedicata, attraverso un condensatore che sia sufficiente per alimentare lo stesso per un periodo di tempo più lungo, per evitare qualunque problema futuro, visto che parti da tensioni elevate, alimentando a parte il micro saresti completamente libero da tutti i problemi di alimentazione.

saluti.