Hallo
Ich bin auch verwirrt, irgendwie scheint der Lesebuffer der UART-LIB nicht richtig zu funktionieren:
Die Ausgabe dazu: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; }
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.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-
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







Zitieren

Lesezeichen