Gast
#6448674
Hi, da mein Programm Flash Sectoren löscht, ich den WWDG verwende auf einem STM32F407 habe ich das Problem, dass der Watchdog auslöst, da das löschen zu lange braucht. Um das Window zu vergrößern, retriggere ich den Watchdog im EWI Interrupt(hat höchste Prio), der einen Takt bevor der Watchdog zuschlägt, ausgelöst wird. Da die IRQs stallen würden wenn sie im Flash liegen, habe ich den IRQ Handler in den RAM verschoben(prinzipiell funktioniert das und ich springe auch in meinen RAM Handler wenn ich den Watchdog nicht triggere) Aber trotzdem: sobald ich einen Sektor lösche, schlägt der Watchdog zu, da anscheinend dann doch irgendetwas stalled. Ich habe noch andere IRQs die theoretisch währenddessen austreten können und dann stallen würden, da sie im Flash liegen. Ich hätte jetzt erwartet, das mein mit höchster Prio laufender Watchdog IRQ diese anderen stallenden IRQs unterbrechen kann. Aber ist das wirklich so? Kann so ein stallender IRQ unterbrochen werden? Oder muss ich während des Flash löschens ALLE IRQs disabeln welche im Flash liegen? Danke für Hilfe!

