Hallo,
ich habe gelesen, dass durch eine Manchestercodierung die Reichweite
einer Funkverbindung etwas erhöht werden kann. Bisher habe ich die zu
sendenen Bytes einfach mit dem Print-Befehl (übe noch mit Bascom) auf
die serielle Schnittstelle gegeben. Byte für Byte...vorher noch eine
Preambel und nachher eine Prüfsumme.
Im Netz habe ich diesen Beispielcode für die Codierung gefunden:
Declare Function M2b(byval Minput As Word) As Byte
Declare Function B2m(byval Binput As Byte) As Word
Dim W As Byte
Dim W2 As Word
Dim I As Byte
Dim I2 As Byte
Dim S As String * 16
'W = M2b(&B)
'W2 = B2m(&B11100110)
Function M2b(byval Minput As Word) As Byte
For I = 0 To 15 Step 2
I2 = I / 2
Select Case Minput.i
Case 1 : M2b.i2 = 0
Case 0 : M2b.i2 = 1
End Select
Next
End Function
Function B2m(byval Binput As Byte ) As Word
For I = 7 To 0 Step -1
Select Case Binput.i
Case 0 : S = S + "01"
Case 1 : S = S + "10"
End Select
Next
B2m = Binval(s)
End Function
End
Wenn ich nun so ein Byte in den ManchesterCode wandle habe ich ja ein
16Bit-Wort.
Kann ich das dann auch einfach auf die Schnittstelle geben?
Es werden dann doch daraus zwei Bytes, oder ??
Wie löst man das am Empfänger ?
Kann man den UART überhaupt nutzen.
Fragen über Fragen.... könnt Ihr mir auf die Sprünge helfen ??
Vielen Dank an alle
Nillo
Kann ich das dann auch einfach auf die Schnittstelle geben? nicht einfach Es werden dann doch daraus zwei Bytes, oder ?? ja Wie löst man das am Empfänger ? aus zwei bytes wieder eins machen Kann man den UART überhaupt nutzen. ja
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.