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:
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.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
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







Zitieren


Lesezeichen