INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> > Ich habe an meine C-Control einen RFID Empfänger angeschlossen. Leider bestehen diese Codes aus Buchstaben und Zahlen, Beispiel "1F0044E882". Diese will ich für eine Zugangskontrolle nun mit ein paar IF's überprüfen. Meine Code-Idee dazu ist folgende: > > > input rfid > > if rfid = 1F0044E882 then goto offnen > > > Aber leider kann ich ja in den variablen nur Zahlen ablegen. > > Wie kann ich das nun so deichseln, dass es funktioniert? > > Mit GET zeichenweise holen und den ASCII-Wert vergleichen. Wird leider etwas umständlich und vielleicht geht's mangels Variablen und / oder Verarbeitungsdauer gar nicht. > > define r1 byte > GET r1 > if r1 = &H31 ... ' &H31 gleich 49 gleich "1" > 'naechstes Zeichen > GET r1 > if r1 = &H46 ... '&H46 gleich 70 gleich "F" > ... > > HTH > > Bye > Achim Okay, ich habs jetzt so gelöst: #loop GET r1 if r1 = &H31 then goto 2 else goto falsch ' &H31 gleich 49 gleich "1" 'naechstes Zeichen #2 GET r1 if r1 = &H46 then goto 3 else goto falsch '&H46 gleich 70 gleich "F" #3 GET r1 if r1 = &H30 then goto 4 else goto falsch #4 GET r1 if r1 = &H30 then goto 5 else goto falsch #5 GET r1 if r1 = &H34 then goto 6 else goto falsch #6 GET r1 if r1 = &H34 then goto 7 else goto falsch #7 GET r1 if r1 = &H45 then goto 8 else goto falsch #8 GET r1 if r1 = &H38 then goto 9 else goto falsch #9 GET r1 if r1 = &H38 then goto 10 else goto falsch #10 GET r1 if r1 = &H32 then goto open else goto falsch '---------------------------------------------------------------------- ' UNTERPROGRAMME: #falsch gosub LCD_CLS print "Falsch" lcd_param = &H80 lcd_buf = OFF gosub LCD_WRITE gosub Nachricht2 goto loop #open gosub LCD_CLS print "Relais macht uff" lcd_param = &H80 lcd_buf = OFF gosub LCD_WRITE gosub Nachricht1 goto loop Das funktioniert auch bei einer Karte, aber wie löse ich das mit ca. 60? MfG Thomas Meine Homepage: http://xythobuz.dyndns.org/ |
Antwort schreiben |