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