Forum: Compiler & IDEs Wie heißt SIG_UART_DATA beim ATmega8?


von Michael Hohmann (Gast)


Lesenswert?

Hi!

Ich möchte eine Datenübertragung über die UART des ATmega8 realisieren.
Zum testen reicht's erst mal, wenn lauter 0x00 lückenlos nacheinander
gesendet werden. Nach Studium des Datenblatts schien mir für eine
lückenlose übertragung SIG_UART_DATA am geeignetsten.

Zum testen erst mal folgender Code:

SGINAL( SIG_UART_DATA )
{
  UDR = 0x00;
}

Problem ist: Sobald ich in der Zeile
  UCSRB = ( 1 << TXEN ) | ( 1 << UDRIE );
das UDRIE reinschreibe und das program flashe, hängt sich der ATmega8
auf, d.h. er reagiert auf keine Tastendrücke mehr. (Auf der Platine
sind noch ein paar Taster und ein paar LEDs, die mit den Tastern
angesteuert werden können, um zu testen ob der µC noch reagiert.)

Das gleiche Verhalten, wenn ich z.B. einen ADC-Interrupt aktiviere, und
mich beim zugehörigen SIGNAL() beim Inhalt der Klammern vertippe.
Deshalb vermute ich, daß SIG_UART_DATA beim ATmega8 anders heißt. Nur
wie?

Gruß, Michael

P.S. Falls jemand ein mit dem ATmega8 funktionierendes Beispiel hat,
welches SIG_UART_DATA verwendet, ist mir das natürlich auch willkommen
:-)

von Ulrich Schneider (Gast)


Lesenswert?

In der "iom8.h" ist SIG_UART_DATA definiert, das scheint also nicht
das Problem zu sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.