Michael_am32
01.08.2010, 23:18
Hallo zusammen, bin noch recht neu bei der Programmierung von Microcontrollern.
Ich wollte eigentlich etwas mit den Timern experimentieren, jedoch wird aus irgendeinem Grund der Interrupt beim TCNT Überlauf nicht ausgelöst
Habe das rn-control Board mit atmega 32
folgender Code:
habe nun in der Interruptroutine nur PIN4 low gesetzt, sodass wenn der Interrupt ausgelöst wird die LED ausgehen müsste, tut sie aber nicht.
#include<avr/io.h>
#include<avr/interrupt.h>
ISR(TIMER2_OVF_vect)
{
PORTC |= (1<<4); //Falls der Interrupt überhaupt aufgerufen wird LED aus!
}
int main(void){
// Initialisierung TIMER2
TCCR2 = (1<<CS22); // Prescaler von 1
TCNT2 = 0; // Counter mit 0 Initialisieren
TIMSK |= (1<<TOIE2); // Interrupts aktivieren und damit Timer starten
// Initialisierung PORTC
DDRC=0xff; //alle LEDS an
sei();
while(1)
{
}
}
Ich wollte eigentlich etwas mit den Timern experimentieren, jedoch wird aus irgendeinem Grund der Interrupt beim TCNT Überlauf nicht ausgelöst
Habe das rn-control Board mit atmega 32
folgender Code:
habe nun in der Interruptroutine nur PIN4 low gesetzt, sodass wenn der Interrupt ausgelöst wird die LED ausgehen müsste, tut sie aber nicht.
#include<avr/io.h>
#include<avr/interrupt.h>
ISR(TIMER2_OVF_vect)
{
PORTC |= (1<<4); //Falls der Interrupt überhaupt aufgerufen wird LED aus!
}
int main(void){
// Initialisierung TIMER2
TCCR2 = (1<<CS22); // Prescaler von 1
TCNT2 = 0; // Counter mit 0 Initialisieren
TIMSK |= (1<<TOIE2); // Interrupts aktivieren und damit Timer starten
// Initialisierung PORTC
DDRC=0xff; //alle LEDS an
sei();
while(1)
{
}
}