Forum: Compiler & IDEs USART-Kanalnummer versenden? Wie?


von Stefan (Gast)


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

von Stefan B. (stefan) Benutzerseite


Lesenswert?

> ich steh grad auf dem Schlauch.

Ich auch. Ich verstehe nix aus der Frage. Vielleicht umformulieren und 
ein bisschen Futter (Sourcecode) anhängen.

von Karl H. (kbuchegg)


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.

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
Noch kein Account? Hier anmelden.