MrTaco
19.05.2010, 15:25
#include <avr/io.h>
#include <avr/interrupt.h>
int a = 106;
#include <util/delay.h>
int main(void)
{
// Timer 0 konfigurieren
TCCR0 = (1<<CS01)|(1<<CS00);
// Overflow Interrupt erlauben
TIMSK |= (1<<TOIE0);
// Global Interrupts aktivieren
sei();
DDRB = 0xFF;
DDRC = 0xFF;
while(1)
{
_delay_ms(200);
a = 106;
PORTC = 0xFF;
_delay_ms(200);
a = 136;
PORTC = 0x00;
}
}
ISR (TIMER0_OVF_vect)
{
PORTB ^= (1<<PB0);
TCNT0 = a;
}
Die leds am Portc blinken.
Jedoch will ich das der TCNT0 wert geändert wird um ne kleine Sirene hin zu bekommen.
Der wert von der Variabel a verändert sich nicht ( nach Debuggen im AVR Studio)
Was hab ich Falsch gemacht?
#include <avr/interrupt.h>
int a = 106;
#include <util/delay.h>
int main(void)
{
// Timer 0 konfigurieren
TCCR0 = (1<<CS01)|(1<<CS00);
// Overflow Interrupt erlauben
TIMSK |= (1<<TOIE0);
// Global Interrupts aktivieren
sei();
DDRB = 0xFF;
DDRC = 0xFF;
while(1)
{
_delay_ms(200);
a = 106;
PORTC = 0xFF;
_delay_ms(200);
a = 136;
PORTC = 0x00;
}
}
ISR (TIMER0_OVF_vect)
{
PORTB ^= (1<<PB0);
TCNT0 = a;
}
Die leds am Portc blinken.
Jedoch will ich das der TCNT0 wert geändert wird um ne kleine Sirene hin zu bekommen.
Der wert von der Variabel a verändert sich nicht ( nach Debuggen im AVR Studio)
Was hab ich Falsch gemacht?