Ich habe die Änderungen eingebaut, doch leider tat sich nach wie vor nichts, außer dem periodischen Selbst-Reset des Controllers.
Dann habe ich nach einem anderen Weg gesucht und bin schließlich auf einen Thread gestoßen, wo du in der gleichen Frage Jemandem anders geantwortet hast.
Damit klappt es!!! \
/
Hier mein endgültiger Code:
Code:
$regfile = "m128def.dat" ' Bei Mega 128 "
$framesize = 40
$swstack = 40
$hwstack = 40
$crystal = 16000000 'Quarzfrequenz
$baud = 19200 'Baudrate für Funkmodul
$baud1 = 19200
Config Pine.2 = Output
Rdy_hostempfangsbereit Alias Porte.2 'Auf Low setzen wenn Empfangsbereit für Daten vom Funkmodul
Open "com2:" For Binary As #2
Config Serialin = Buffered , Size = 20 , Bytematch = 13
Enable Interrupts
' ---------------------------------------------------
Dim Command_key As Byte
Dim Command_count As Byte
Dim Command_string As String * 12
Dim Empfang As Bit
Empfang = 0
Rdy_hostempfangsbereit = 0
Echo Off
Do
If Empfang = 1 Then
Sound Portg.2 , 200 , 650
Waitms 1
Print #2 , Command_string
Empfang = 0
Command_string = ""
End If
Loop
Serial0charmatch:
Empfang = 1
Command_count = 0
Command_string = ""
While Ischarwaiting() = 1
Command_key = Inkey()
If Command_key <> Chr(13) Then
Incr Command_count
If Command_count < 12 Then
Command_string = Command_string + Chr(command_key)
End If
End If
Wend
Clear Serialin
Return
Der String ist 12 Zeichen lang, wer eine andere Länge haben will muss sie oben bei "Dim String as" und unten bei "If Command_count" ändern.
Wer ein anderes Erkennungszeichen als Chr(13) nehmen will, muss es oben bei "Config Serialin [...] Bytematch=" und unten bei "If command_key" ändern.
Das Bit "Empfang" sorgt dafür dass nur dann Text ausgegeben wird, wenn neue Daten empfangen wurden.
Die Geschwindigkeit ist super! Mein Sender sendet im Abstand von 200 Millisekunden "Hallo" mit einer Zählvariable die von 1 bis 9 läuft und jede Message wird korrekt angezeigt.
Hier noch der Link zum Original-Thread:
https://www.roboternetz.de/phpBB2/ze...t=input+string
Viel Spaß mit dem Programm und nochmals Danke an dich Rolf! =D>
Lesezeichen