Forum: Mikrocontroller und Digitale Elektronik STM32F0xx IWGD Berechnung


von STM32er (Gast)


Lesenswert?

Nabend,

Komme gerade irgendwie nicht klar.
Versuche den IWGD Watchdog zu Initalisieren.

Dabei hat nur leider mein Reload Wert keinen Einfluss auf das auslösen.
Berechne ich sicherlich falsch...

Der RC Oszi. läuft bei dem IWGD mit ca. 40kHz und einem Prescaler von 
4?! Default?!

Man soll laut Datenblatt einen min/max Wert von ~0,1ms/28,3sec.
Bei meinen Rechnungen komme ich nur auf die 0,1ms.

Gerechnet habe ich.: 40kHz / 4 * Reload_Wert.

Was mache ich falsch?

Hier die Init.:
1
    RCC_LSICmd(ENABLE);
2
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
3
    IWDG_SetPrescaler(IWDG_Prescaler_4);
4
    IWDG_SetReload(100);
5
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Disable);
6
    IWDG_Enable();

von Jim M. (turboj)


Lesenswert?

STM32er schrieb:
> Gerechnet habe ich.: 40kHz / 4 * Reload_Wert.

Da ist das Ergebnis in Hz. Du wolltest aber Sekunden, und 1s = 1/Hz.

Da sagt Dir also schon die Einheiten Berechnung dass die Formel so nicht 
richtig sein kann...

von STM32er (Gast)


Lesenswert?

Ich komme trdz. nicht auf 28,3 Sekunden. Welcher Reload Wert sollte das 
denn bei 40kHz sein?

von STM32er (Gast)


Lesenswert?

40kHz = 40,000Hz
40kHz / 4 = 10,000Hz

1/10,000 = 0,0001 Sekunden

Reload Wert würde ich 283.000 raus bekommen. Es darf max. 0x0FFF sein,

von STM32er (Gast)


Lesenswert?

Habe meinen Fehler. Vielen Dank für die Hilfe (:

von Carl D. (jcw2)


Lesenswert?

DB sagt für IWDG:
Prescaler
/256 -> 26214.4 ms
/4   ->   409.6 ms

Warum nicht von den dokumentierten Werten ausgehen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.