serielle schnittstelle lesen

Gast #49454
hallo

ich möchte bei einem 8051'er kompatiblen prozessor direkt die
serielle schnittstelle lesen.
bis jetzt habe ich das mit der funktion getch() gelöst.
nun ist das aber ja nicht so ideal wenn gar kein zeichen über die
serielle schnittstelle kommt. dann bleit das programm doch bei getch()
stehen bis er ein zeichen empfängt.
wie könnte ich das nun richtig lösen? am liebsten würde ich einfach
sporadisch das register der seriellen schnittstelle lesen.
ich habe das aber noch nie gemacht.
vieleicht hat ja jemand einen guten tip.

gruss tobias
Gast #49455
na, sporadisch lesen ist nicht so gut, wenn ein Zeichen aus dem Receiver
nicht abgeholt wird und ein neues kommt, ist das 1. futsch.
Wenn abfragen, dann das Bit RI im SCON abfragen, wenn Zeichen da,
abholen. Damit nichts verlorengeht, muss man allerdings recht häufig
nachfragen.
Besser ist Interruptbetrieb, ein empfangenes Zeichen löst einen int
aus, in dessen Verlauf das Zeichen gelesen wird und im RAM abgelegt
wird, gibt sicher fertige Software dafür.
Gast #49457
danke schön

funktioniert wunderbar.

noch eine andere frage, wie kann ich folgendes in c
einfacher programieren:

char arr[];

if((arr[i] == '1')||(arr[i] == '2')||...))
 mache etwas;


ich möchte einfach nur "mache etwas" ausführen wenn arr[i] eine zahl
zwischen 0 u. 9 ist.

besten dank tobias

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.