Hallo,
danke nochmals an alle.
@Joe:
hab mir mal deinen Code angeschaut. Wie kommst du auf deinen OCR2A Wert von 125? Laut Datenblatt ist die Formel doch (OCR2A=(fCLK/(2*N*fOCR))-1= 61.5 (bei deinen gewählten Werten).
@sebastian
Ich hab mal deinen Code verwendet. Hab die Timer_Init auf meinen Controller (AT90CAN) angepasst. Den Rest hab ich gelassen. Ich hab noch ein main-Programm eingefügt. Ich will zur Probe einfach mal eine LED nach einer gewissen Zeit schalten. Es funktioniert nicht. Ich hab den main-Code mal angehängt
Im Prinzip ist der Code von der Funktion her genau dass was ich braucheCode:int main(void) { DDRA = 0xff; PORTA = 0xff; uint8_t my_timer = AllocateCountdownTimer(); while(1) { SetCountdownTimer(my_timer,200); /*20*10mS ergibt 2000 mS*/ if (GetCountdownTimer(my_timer)) { PORTA = 0x00; } ReleaseCountdownTimer(my_timer); } }
Bis dann lG Anna







Zitieren

Lesezeichen