Hallo

Ich bin auch verwirrt, irgendwie scheint der Lesebuffer der UART-LIB nicht richtig zu funktionieren:
Code:
#include "RP6RobotBaseLib.h"


char eingang[15];

int main(void)
{
	char i;

	initRobotBase(); // Initialisierung – IMMER ALS ERSTES AUFRUFEN!
	powerON();

	while(true)
	{
		writeString_P("Bitte etwas eingeben -max 10 Zeichen-");
  		writeString_P("\n\r");

   	i=0;
		do
		{
			while(!getBufferLength());		//warten solange keine Zeichen im Buffer
			while(getBufferLength())		// Zeichen aus Buffer einlesen
				eingang[i++]=readChar();
		}while(i==0);

		eingang[i]=0; // Endekennung String nach letztem Zeichen
		writeString(eingang);
   	writeString_P("\n\r");
	} // Endlosschleife
	return 0;
}
Die Ausgabe dazu:
Code:
Terminal cleared!

s

Bitte etwas eingeben -max 10 Zeichen-
# 1

1

Bitte etwas eingeben -max 10 Zeichen-



Bitte etwas eingeben -max 10 Zeichen-
# 12

1

Bitte etwas eingeben -max 10 Zeichen-

2


Bitte etwas eingeben -max 10 Zeichen-
# 1234

1

Bitte etwas eingeben -max 10 Zeichen-

234


Bitte etwas eingeben -max 10 Zeichen-
# 1234567890

1

Bitte etwas eingeben -max 10 Zeichen-

234567890


Bitte etwas eingeben -max 10 Zeichen-
Aber ich kenne mich damit nicht wirklich aus. Vielleicht mal eine aktuellere Lib installieren? Es gab da mal ein Update beim Zeicheneinlesen soweit ich mich erinnere.

Wichtig ist zu wissen, dass der RP6Loader keine einzelnen Zeichen schicken kann (leider) sondern immer die komplette Zeile nach [Return]. Das Hyperterminal kann das aber (mit 34800Baud).

Gruß

mic