Hallo Furtion,
Ich benutze zur Überprüfung die Ischarwaiting-Funktion mit anschließendem, Piep. Wenn ich RN-Funk nicht anhabe, läuft er durch, wenn es an ist, bleibt er hängen. Anscheinend kommt also etwas an, aber das nehmen dieser daten bereitet ihm Probleme. Aber welche?
Der String ist auf ein Zeichen eingestellt, dort kann er nicht warten, da durch die Ischarwaiting-Funktion ja sichergestellt wird, dass mindestens ein Zeichen da ist.
Wenn ich das ganze andersrum mache, also RN-Mega128 sendet und RN-Funk + Display empfängt, tut alles einwandfrei.
Ich habe nochmal das Programm für RN-Mega128 angehängt:
Code:
$regfile = "m128def.dat" ' Bei Mega 128 "
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000 'Quarzfrequenz
$baud = 19200 'Baudrate für Funkmodul
$baud1 = 19200 'Baudrate für MAX
Config Ping.0 = Output 'Spannung an LCD aktivieren
Lcdpower Alias Portg.0
Config Pine.2 = Output
Rdy_hostempfangsbereit Alias Porte.2 'Auf Low setzen wenn Empfangsbereit für Daten vom Funkmodul
Config Pine.5 = Input
Bsy_funkmodulsendebereit Alias Porte.5 'Ist Low wenn Funkmodul frei zum senden
Open "com2:" For Binary As #2 'Ausgabe über zweite serielle Schnittstelle (MAX)
' ---------------------------------------------------
Sound Portg.2 , 450 , 450
Sound Portg.2 , 450 , 350
Sound Portg.2 , 450 , 450
Sound Portg.2 , 450 , 350
Do
Dim Incoming_data As String * 1
Print #2 , "hallo";
Rdy_hostempfangsbereit = 0
If Ischarwaiting() = 1 Then
Input Incoming_data Noecho
Print #2 , "daten:";
Sound Portg.2 , 450 , 350
Print #2 , Incoming_data;
End If
Sound Portg.2 , 450 , 350
Wait 1
Loop
Gruß
Jimmy
Lesezeichen