USART-Kanalnummer versenden? Wie?

Gast #743169
Lesenswert?

Servus zusammen,

ich steh grad auf dem Schlauch. Ich versende mein Daten in ner Schleife 
über die Hardware-USARTs und habe bisher einfach einen String 
vornehingepackt:
Kanal1[] = "USART0"; und Kanal2[] = "USART1;
Weil ich aber ohnehin den Schleifenzähler habe wollte ich nun einfach 
den Zähler rausschicken, damit ich nurmehr gleichen Code habe.
Ich rufe USART_TransmitC( u, u ); auf, aber nichts kommt raus. Das erste 
'u' ist die Kanalnummer, das zweite 'u' soll die zu sendende Zahl sein.

USART_TransmitC hat die Parameter unsigned char channel und unsigned 
char data.

Stefan
#743520
Lesenswert?

USART_TransmitC( u, u + '0' );

Wenn ich dich richtig verstanden habe, dann ist u ein int oder
ein uint8_t. Auf jeden Fall eine numerische Variable die abwechselnd
0 oder 1 ist. Das zweite Argument zu UART_TRansmitC dürfte aber
ein Character sein.  Also musst du dort den ASCII Code des Zeichens
das du senden willst hineinstopfen. Einstellige Ziffern kann man
leicht in ihren ASCII Code überführen, indem man den ASCII Code
von '0' hinzuaddiert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren