Hallo,
mache über die RS232 eine Abfrage die dann beim richtigen Input  demenstsprechend Antworten soll. Nur leider klappt es nicht so wie ich will.
Hier der Code:
	Code:
	'Hardware:  MAX232 an PD0/PD1, Nullmodemkabel zum PC
'---------------------------------------------------
$regfile = "m8def.dat"
$crystal = 3686400                                          'Quarz: 3.6864 MHz
$baud = 9600                                                'Baudrate der UART: 9600 Baud
Config Com1 = Dummy , Synchrone = 0 , Parity = Even , Stopbits = 1 , Databits = 8 , Clockpol = 0
' set buffer for hardware UART input
Config Serialin = Buffered , Size = 254
Enable Interrupts
Dim A As Byte
Dim B As String * 7
Anfang:
B = Chr(&H00) + Chr(&H05) + Chr(&H08) + Chr(&H7d) + Chr(&H00) + Chr(&H70) + Chr(&H00)
A = Ischarwaiting()
   If A = B Then
   Goto Klappen:
   Else
   Goto Anfang:
   End If
Gosub Anfang:
Klappen:
Waitms 200
Printbin &H3F ; &H06 ; &H00 ; &H0C ; &H01 ; &H39 ; &H01 ; &H0C ;
Waitms 200
Printbin &H3F ; &H06 ; &H00 ; &H0C ; &H02 ; &H39 ; &H01 ; &H0F ;
Goto Anfang:
End
 Hab nur jetzt leider bei inkey und waitkey das Problem, das sobald ein Zeichen der chr( )-Kette empfangen wird gleich das ganze Programm druchläuft und quasi gleich zu "klappen:" geht.
Soll natürlich warten bis der komplette richtige Code erst empfangen wird.
Bei Ischarwaiting() passiert ganrnix. 
Muß ich die Zeichen irgendwie anders abfragen oder verketten ?
Goto verwende ich jetzt schon weil die Abfrage noch erweitert werden soll...
Vielen Dank im voraus !!!
M.f.G.
Jürgen
						
					
Lesezeichen