Page 1 of 1

PostPosted: Wed Jun 09, 2010 12:00 am
by michael
Hallo,

ich als absoluter neuling in Sachen Mikrocontroller habe da auch gleich mein erstes Problem. Ich habe es geschafft mit den Besipieldateien 1 Byte per Schnittstelle zu senden. Das ganze kann ich dann auch am PC mittels Terminalprogramm anschauen.
Mein Befehl den ich aber senden möchte, ist länger als 1 Byte z.B. "Hallo". Wenn ich diesen String so übermittle, dann bekomme ich im Terminalprogramm nur ein "H" der rest wird abgeschnitten. Warum ist mir auch klar, da der Sendepuffer nur max 1 Byte speichern kann.
Und da liegt mein Problem. Wie kann ich es machen das ich als Variable den Text "Hallo" deklariere und mir dann ein nach dem anderen Zeichen an die Sendefunktion geschickt wird?

Vielen Dank

Michael

PostPosted: Thu Jun 10, 2010 12:00 am
by mikedek
Hallo Michael,

Du kannst Dir eine kleine Funktion schreiben, mit der Du dann einen Text ausgeben kannst.
zb.:
void uart_puts (char *s)
{
while(*s)
{
sendTxd0(*s);
s++;
}
}

In dieser Funktion wird solange ein Zeichen ausgegeben, bis kein Zeichen mehr kommt.

zb.: uart_puts("Hallo Welt!\n\r");

Vieleicht hilft Dir das weiter.

Schöenen Gruss
Mikeclsch

PostPosted: Thu Jun 10, 2010 12:00 am
by michael
Vielen Dank,

werde es morgen gleich mal ausprobieren!

Michael