Gast
#1321367
Hallo Leute,
ich habe folgende Probleme und zwar. Ich vesuche ein Testprogramm zu
schreiben. Wenn ein Interrupt kommt, soll der RTC aktivieren und bei
jeder Sekunde ein Ausgabe per USART erfolgen. Die Code sind folgende:
#include <avr/io.h>
#include "quarz.h"
#include <avr/interrupt.h>
#include <avr/sleep.h>
#include "usart_128.h"
volatile uint8_t flag = 0x00;
void timer0_aktivieren (void)
{
ASSR |= (1 << AS0);
TCCR0 |= (1 << CS02) | (1 << CS00);
TIMSK |= (1 << TOIE0);
}
ISR (TIMER0_OVF_vect)
{
USART_Transmit_String1 ("tick\n\r");
}
ISR (INT1_vect)
{
timer0_aktivieren ();
}
int main (void)
{
USART_Init1 ();
MCUCR |= (1 << SE) | (1 << SM1) | (1 << SM0);
EIMSK |= (1 << INT1);
EICRA |= (1 << ISC11);
sei ();
while (1)
{sleep_mode ();}
return 0;
}
Die USART-Funktion habe ich schon getestet und einwandfrei funktioniert.
Aber nachdem ich die RTC-Funktion eingebaut habe. Die Ausgabe
funktioniert nicht mehr richtig. Statt "tick\n\r" auszugeben, gibt sie
irgendwas anderes aus.
Kann jemand mir bitte sagen, was ich flasch gemacht habe?
Tommi