logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

atmega 168 problem z watchdog

wilk125 22 Kwi 2010 11:17 1487 4
REKLAMA
  • #1 7990300
    wilk125
    Poziom 23  
    Witam
    Problem jest następujący,jak wstawie sekwencje uruchamiania watchdoga na poczoatku programu to jest ok i watchdog dziala dobrze, natomist jesli wstawie tą sekwencję po opóźnieniu wiekszym od 19 ms to watchdog resetuje atmege w taki sposób ze program sie zatrzymuje i nawet reczny reset nie pomaga, dopiero wylaczenie zasilna jest skuteczne, poniżej kod fragmentu programu:
    
    int main(void)
    {
    
       DDRC = 0x1f;  
       PORTC =0xfe;  
    
       DDRD = 0x1f;
       PORTD = 0xff; //podciagniecie do vcc
    
       DDRB = 0xf; //PB0 i PB1 i PB2 jako wyjscia
       PORTB=0xff;	//podciagniete do vcc
    
    _delay_ms(19);//jesli to opóznienie bedzie wieksze od 19ms to watchdog nie działa, ponizej tego czasu jest ok
    
    
    //MCUSR &= ~(1<<WDRF);
    	/* Start timed equence */
    WDTCSR |=  (1<<WDCE) | (1<<WDE);//(1<<WDCE)
    /* Set new prescaler(time-out) value = 256K cycles (~2 s) */
    WDTCSR = (1<<WDE) | (1<<WDP2) | (1<<WDP1)| (1<<WDP0);//
    cbi(PORTB,PB3);
    
    itd...
    

    co może byc przyczyna takiego dziwnego zachowania?

    pozdrawiam
  • REKLAMA
  • #2 7990349
    gjanek
    Poziom 12  
    Ja miałem to samo ale okazało się ze atmega przez tranzystor sterowała mi cewka przekaźnika. Cewka przekaźnika nie była zabezpieczona dioda (dioda była uszkodzona) dopiero po wymianie diody wszystko wróciło do normy.
  • REKLAMA
  • #3 7990409
    wilk125
    Poziom 23  
    u mnie nie ma tego problemu z przekaźnikiem, program wczesniej działal na atmega8 i bylo ok
  • REKLAMA
  • #4 7990484
    Konto nie istnieje
    Poziom 1  
  • #5 7990512
    wilk125
    Poziom 23  
    nie jest usatawiony, robiłem testy z jego ustawieniem i wtedy nie musze wogóle uruchamiać watchdooga zeby działał, działa cały czas i prawidłowo.

    Zastanawiam sie czy moje problemy nie mają związku z przerwaniami.
REKLAMA