Forum: Mikrocontroller und Digitale Elektronik UART Bytes einzeln ablegen in BASCOM


von A. Arndt (Gast)


Lesenswert?

Hallo,

hat jemand eine Idee zu folgendem Problm :

Über den UART z.B. M8 kommen 10 Bytes rein, wenn man diese über ein 
Terminalprogramm empfängt kommen nur wilde Zeichen raus, klar, die 
Zahlen werden als CHR umgesetzt, die 10 Byte folgen ohne Zeilenumbruch 
und Trennzeichen.

Der Sender, ein Ultraschall-Entfernungsmesser, schickt alle  Sekunde die 
Daten, nun möchte ich gerne die 10 Bytes zum "Weiterrechnen" in 
einzelnen Variablen ablegen, z.B. B1 = 256, B2 = 48 usw.

Geht das überhaupt ? Die Endeerkennung würde ich über eine 
Zeitmessschleife mache, 10 Byte bei 4800 Baud ca. 2 ms...dann wieder 
Ruhe bis zur nächsten 1 Sek.

Gruss
A. Arndt

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Das geht.

Aber 10 Byte sind gut 20 ms bei 4800 Baud (plus mehr, wenn der Sender 
Pausen zwischen Zeichen macht).

Und wenn du statt einzelnen Variablen B1, B2, ... mit einem Feld 
arbeitest könnte es einfacher sein, weil du mit Schleifen die Avriablen 
als Feldelemente bearbeiten kannst.

von A. Arndt (Gast)


Lesenswert?

Hi,

natürlich ca. 20ms, was bedeutet "als Feld" ?

BASCOM....

Ich möchte auch z.B. Byte + Byte2 als LoHi zu einer Integer-Variablen 
zusammenfüren, wie das geht ist klar "makeinteger (Hi-Byte/Lo-Byte)"
Ich kann auch einen Zähler hochzählen lassen nach UART-Empfang...


Gruss
A. Arndt

von Stefan B. (stefan) Benutzerseite


Lesenswert?


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.