Serielle Schnittstellen 8051 printf

Gast #2403805
Lesenswert?
• ▲
▼
Hallo,

ich möchte über beide Serielle Schnittstellen des SAB80c517a Daten an 2 
Rechner senden. Also über SS0 an Rechner A und über SS1 an Rechner B.

Die formatierte Datenübertragung über SS0 funktioniert ja einfach über 
das printf(). Ich würde nun aber auch gerne formatierte Daten über SS1 
übertragen. Funktioniert das auch irgendwie über printf()? Konnte hier 
im Forum/Google nichts finden.

Einstellungen sind eigentlich korrekt. Bei Eingabe von bspw:

...
S1BUF=0x41;
printf("%c ",S1BUF);
...
wird "A" in UART2 angezeigt. Bei:
...
S1BUF=0x41;
printf("hallo %c ",S1BUF);
...

wird in UART1 das "hallo" angezeigt und in UART2 das "A".

Vielen Dank schonmal.
Gast #2404165
Lesenswert?
• ▲
▼
Also in der stdio.h ist das putchar ja jetz auch nur so definiert:

#define putchar(_c)       putc((_c),stdout)

   #define stdin  (&__iob_func()[0])
-> #define stdout (&__iob_func()[1])
   #define stderr (&__iob_func()[2])

also müsste ich jetz irgendwie das stdout ändern?

#define putc(_c,_stream)  (--(_stream)->_cnt >= 0 \
                ? 0xff & (*(_stream)->_ptr++ = (char)(_c)) : 
_flsbuf((_c),(_stream)))


leider blicke ich beim #define putc(...) gar nicht mehr durch, gibts 
dafür irgendwo ne erläuterung?

danke.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.