String von Serieller Schnittstelle auslesen

#512713
SBUF, ist das basecom?
hab ich noch nie gehört, general kannst du aber immer nur ein Byte lesen 
(gegebenenfalls auch mehrere Bytes aus einem Buffer). Wenn du einen 
String sendest solltest du auch irgendwas zum Abschluss mitsenden (in 
der Regel ist das bei Strings 0x00), dann musst du den string einfach 
nur solange in einen Buffer schreiben bis du beim 0x00 Byte angekommen 
bist. Dann hast du im Buffer dein String.

Wenn es Basecom ist würde ich mich nicht wundern wenn da schon irgend 
eine Funktion dabei ist die genau so was macht.
Gast #512734
> ... mit SBUF und so

Nun weiß ich das du von einem 8x51 Derivat sprichst. Gib dir mal nen 
bischen Mühe bei der Formulierung deiner Frage ansonsten bekommst du 
keine Antwort.
Gast #512776
So, ich glaube so dürfte es funktionieren:

for(y=0; y<20; y++)
{
   charReceive[y]=SBUF;
   strcat(stringReceive, charReceive);
}

Danke für die Antworten.

lg Hans
Gast #512805
Üblicherweise hast du eine Funktion um ein Zeichen zu Empfangen 
(getchar), vorrausgesetzt die UART ist initialisiert.
1
char getchar (void)    {
2
  while (!RI);                   // Receiver ready/busy ?
3
  RI = 0;                        // Zeichen empfangen, clear RI Flag
4
  return SBUF;                   //
5
}

Achte darauf das du RI abfragst (polling mode). Ansonsten kannst du das 
auch in einer Interrupt Routine erledigen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 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.