Hallo Dieter!
Danke für deine schnelle Hilfe -> Es funktioniert...!
Habe "Daten", wie du beschrieben hast, wieder auf null gesetzt und siehe da...
Für alle, die es noch Interessiert, hab ich hier noch den leicht ausgebesserten Code:
Code:
#include <inttypes.h>
#include <avr/io.h>
#include "lcd.h"
#define LCD_LINES 2
#define LCD_DISP_LENGTH 8
#include <avr/interrupt.h>
#include <avr/signal.h>
//#include <avr/iom32.h>
volatile unsigned char Daten;
int p;
SIGNAL(SIG_UART_RECV)
{
Daten = UDR;
UDR = Daten;
}
void main(void)
{
lcd_init(LCD_DISP_ON);
lcd_clrscr();
lcd_puts ("Hallo");
UBRRL = 47;
UBRRH = 0;
UCSRB |= (1<<TXEN) |(1<<RXEN)|( 1<<RXCIE);
UCSRC |= (1<<URSEL) | (3<<UCSZ0);
sei();
abfrage();
}
abfrage()
{
for(;;)
{
if(Daten == 'a')
{
Daten = 0;
lcd_gotoxy(1,1);
lcd_puts ("a");
}
if(Daten == 'd')
{
Daten = 0;
lcd_gotoxy(1,1);
lcd_puts ("d");
}
}
}
Nochmals Danke!
Gruß Daniel
Lesezeichen