hallo,
ich möchte ein String über Hyperterminal empfangen, möchte auch einfach
was ich empfange gleich in HypTerminal zeigen(UDR0=uart_getc();). das
Problem ist, ich soll 2 Mal typen, dann werde den zweiten Zahl gezeigt,
der erster sieht man gar nciht.
hier ist der code:
uint8_t uart_getc(void)
{
while (!(UCSR0A & (1<<RXC0)))
;
return UDR0;
}
void uart_gets( char* Buffer, uint8_t MaxLen )
{
uint8_t NextChar;
uint8_t StringLen = 0;
NextChar = uart_getc();
while( NextChar != '\n' && StringLen < MaxLen - 1 ) {
*Buffer++ = NextChar;
StringLen++;
NextChar = uart_getc();
UDR0=uart_getc();
}
*Buffer = '\0';
}
int main(void)
{
line[40];
uint8_t c;
uart_init();
uart_gets( Line, sizeof( Line ) );
while (1)
{
;
}
return 0;
}
danke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.