Forum: Compiler & IDEs Problem mit RS232 und I2C


von Hinrich Specht (Gast)


Lesenswert?

Hallo,

ich habe einen ATMega16 per I2C mit einem LCD-Display verbunden und
kann das Display auch ansteuern. Jetzt möchte ich Zeichen, die der
Controller per RS232 vom PC empfängt, auf dem Display ausgeben.
Ausserdem werden die Zeichen zur Kontrolle per RS232 an den PC
zurückgesendet.
(Ich nutze die UART-Lib von Peter Fleury).
Das Problem: Wenn ich das Programm (so wie unten) starte, kommen die
Zeichen korrekt wieder am PC an, aber das LCD-Display zeigt mir alles
4mal hintereinander an.
Kann mir jemand einen Tip geben woran das liegen kann?

Danke, Hinrich


Hier die Schleife der Main-Funktion, in der die ankommenden Zeichen der
RS232 abgefragt werden:

for(;;) {
   c = uart_getc();
   if ( c & UART_NO_DATA )
        {
            /*
             * no data available from UART
             */
        }
      else
    {
      uart_putc( (unsigned char)c );
      Msg2LCD((unsigned char)c);
    }
   }
}

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.