Hallo zusammen! Ich habe bei Conrad eine 8-fache Relaiskarte gekauft um ein Lüftungssystem zu steuern. Ich würde diese Karte gerne vom PC aus über RS232 steuern können. Leider habe ich keine Ahnung wie ich das tun sollte. Dieser Code wurde mir mitgeschickt: CLS : CLEAR DIM inbuf(800) DIM outbuf(8) OPEN "com2: 19200,n,8,1,bin,cs,ds" FOR RANDOM AS # 1 ---INTERRUPT SE RIAL INTERFACE ON--- COM(2) ON ON ERROR GOTO BADCOM ON COM(2) GOSUB GETFRAME ---INITIALIZE RELAIS BOARD--- PRINT "INITIALIZE BOARD" outbuf(O) = 1: outbuf(1) = 1: outbuf(2) = 0: GOSUB sendframe FOR delay = 1 TO 1000000: NEXT: CLS ---SWITCH RELAIS--- teststart: r = 1 rt: outbuf(O) = 3: outbuf(1) = 1: outbuf(2) = r: GOSUB sendframe FOR delay = 1 TO 1000000: NEXT: CLS r = r * 2: IF r < 256 THEN GOTO rt GOTO teststart ---SERIAL COMMUNICATION--- ---READ 4 BYTE DATAFRAME---- GETFRAME: inbuf(bz) = ASC(lNPUT$(l, # 1)) bz = bz + 1 IF bz = 4 THEN GOTO checkframe RETURN ---CHECK VALIDllY--- checkframe: ERROR$ = "ERROR" IF inbuf(O) XOR inbuf(1) XOR inbuf(2) = inbuf(3) THEN ERROR$ = "OK" bz = 0: PRINT"RECEIVED:";" ";inbuf(0);" ";inbuf(1);" "; inbuf(2);" "; inbuf(3); " "; ERROR$ PRINT "-------------------------------------------': RETURN ---SEND 4 BYTE DATAFRAME--- sendframe: outbuf(3) = outbuf(0) XOR outbuf(1) XOR outbuf(2) send$ = CHR$(outbuf(0)) + CHR$(outbuf(1)) + CHR$(outbuf(2)) + CHR$(outbuf(3)) PRINT # 1, send$ PRINT "TRANSMITTED: ";" "; outbuf(0);" "; outbuf(1);" "; outbuf(2);" "; outbuf(3) RETURN '****************** ERROR HANDLER ************* BADCOM: PRINT "- DATA ERROR !" RESUME RETURN ende: END Kann mir jemand erklären wie ich das tun kann! Ich bin sehr interessiert an dieser Sache jedoch noch ein Anfänger. Herzlichen Dank für jede Hilfe Gruss Dario
Die erste Hilfe ist mal dich darauf hin zuweisen, mitzuteilen "welche" Relaiskarte du gekauft hast!
@ Dario A. (Gast) >RS232 steuern können. Leider habe ich keine Ahnung wie ich das tun >sollte. Tja, ein wenig Programmierkenntnisse brauchst du schon. Und wenn du die hast, dann kannst du den Code leicht verstehen und anpassen. Die Steuerung ist einfach. Sende der Karte per RS232 ein Datenpaket aus 4 Bytes. Dort ist kodiert, welche Relais wie geschaltet werden sollen. Zum Dank antwortet deine Karte mit einem Paket aus ebenfalls 4 Bytes. Zum Testen empfehle ich HTERM, dort kann man direkt Binäre/Hexadezimale Daten eingeben, anzeigen, versenden und empfangen. http://www.der-hammer.info/terminal/ MFG Falk
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.