PIC Watchdog Timer C18

Gast #1424759
Lesenswert?

Hi!

Mache gerade meine erste Erfahrungen mit dem Watchdog Timer.

Ich dachte ich tu meinem PIC was gutes und schalt ihn mal ein.
Irgendwann wunder ich mich, warum der PIC alle 2:18min abstürtzt.

Irgendwie dachte ich, dass der C18 Compiler selbst daran denkt den 
Watchdog Timer zu Reseten - > anscheinen falsch gedacht.

Kann ich das CLRWDT als Assembler inline in meine Main-Schleife packen 
oder wie macht man das den sauber?

Gruß stefan
(Firma: www.pcb-devboards.de) #1424916
Lesenswert?

Hi.
Du kannst es einfach über TMR interrupt laufen lassen:
1
void interrupt_high (void)
2
{
3
    //******************************************************************************
4
    //  System timer (for system ticks) 1ms
5
    //******************************************************************************
6
   if  (PIR1bits.TMR2IF)
7
    {
8
           _asm clrwdt _endasm
9

10

11
          OS_Timer();
12
          PIR1bits.TMR2IF = 0;
13
     }
14
.
15
.
16
.
17
.


oder in Scleifen einfügen:
 _asm clrwdt _endasm

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren