Ho un programma 3.x ChibiOS su un microcontrollore STM32F4 in cui io uso il cane da guardia IWDG per ripristinare la MCU in caso di errori del genere:La disattivazione del STM32 IWDG durante il debug
int main() {
iwdgInit();
iwdgStart(&IWDGD, &wd_cfg);
while(true) {
// ... do stuff
}
}
Se ora io attribuisco il mio debugger e , in qualsiasi momento, interrompe il programma (manualmente o tramite un breakpoint), il microcontrollore si resetterà dopo il timeout definito dalla configurazione del watchdog (e quindi causa problemi nel mio processo di debug)
Come posso disabilitare questo comportamento, cioè come posso disattivare l'IWDG mentre il core è arrestato a causa del debugger?
Ho provato a disattivarlo completamente, tuttavia, ho bisogno di lasciarlo in esecuzione per recuperare i reimpostazioni IWDG indesiderati.
L'IWDG è disabilitato di default, quindi si può solo lasciarlo disattivato finché non si inizia a testare il codice finale. Se vuoi fare tutorial per l'STM, sei molto meglio del wiki STM32. L'overflow dello stack è un Q & A, non un sito tutorial. – Olaf
@Olaf a) Assicuratevi che i miei tutorial siano completamente diversi da questo. Questa è una domanda specifica con una risposta specifica, in altre parole una domanda e risposta. Che wiki STM32 intendi? b) La tua ipotesi è sbagliata. Mentre in fase di sviluppo questo potrebbe funzionare, ho un sacco di casi in cui ho * bisogno * di IWDG da resettare se il timer WDG si esaurisce, ad es. acquisire dati sul comportamento (errato) sotto l'attività di rete ad alto carico (il watchdog si ripristina inavvertitamente?). Aspettare fino a quando la produzione con questo sarebbe sciocco. Anche la risposta a questo è abbastanza importante per i test di produzione. –
@Olaf Quindi, nessuna domanda STM32 deve essere richiesta * affatto * perché è tutto nei documenti? Non penso davvero che questo argomento funzioni. Se pensi che questa sia una domanda con ricerca non sufficiente, downvote e/o votare per chiudere. Presumo che tu l'abbia già fatto. Mentre lo fai, scriverò più soluzioni ai problemi reali, mi dispiace ... –