Programmcode zum umwandeln von Bitsignalen

Gast #794810
Guten Abend,

Der folgende Code soll dazu dienen, Bitsignale in einen Maschinencode 
umzuwandeln. Er ist in der Programmiersprache Bascom geschrieben Ich 
habe ihn aus einem Beispiel entnommen und möchte den Code gerne 
verstehen.
1
Sub Empfangen(byval Num As Byte)
2
While Isit < 255
3
Isit = Waitkey()
4
Wend
5
Num=Num+1
6
For F=1 To Num
7
Isit = Waitkey()
8
Ar(f) = Isit
9
Next
10
End Sub

Die Variable Ar(f) soll am Ende den Maschinencode ergeben. Ich weiß aber 
nicht, wie die Anweisung "Isit < 255" zustandekommt. Kann jemand damit 
was anfangen?
Gast #794826
Isit ist eine temporäre Variable, in der der Rückgabewert von Waitkey 
gespeichert wird. Dadurch kann man den Wert vergleichen, ohne ein 
weiteres Mal die Waitkey-Funktion aufzurufen.

Der Autor hat imho vergessen, Isit vor dem ersten Test zu 
initialisieren. Oder macht Basic das automatisch?
Gast #794836
Die Variable "Isit" wurde weiter oben initialisiert. Der Datentyp lautet 
Byte. Die Funktion Waitkey() scheint in einer Bibliothek von Bascom 
enthalten zu sein. Was macht die Funktion eingentlich, oder könnte sie 
machen?

Basti
Gast #794966
Hi,


>Sub Empfangen(byval Num As Byte)
>While Isit < 255
>Isit = Waitkey()
>Wend

Hier wird solange in der Schleife die Serielle Schnittstelle abgefragt, 
bis 255 ( Bin 11111111 ) kommt. Vermutlich zum Synchronisieren. Der 
Befehl Waitkey wartet auf einen Char der seriellen Schnittstelle, wenn's 
sein muss bis in alle Ewigkeit.

>Num=Num+1
>For F=1 To Num
>Isit = Waitkey()
>Ar(f) = Isit
>Next

Die Schleife sammelt Num mal (Übergabewert) Daten von der Seriellen und 
speichert die Daten in einem Array Ar(f).
Num+1 ist vermutlich wegen Array auslesen als Endkennung.



Gruß
Gerhard

Antwort schreiben

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