![]() ![]() INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo David, ne, erst einmal zum Verständnis. Nicht die Anschlussklemmen mit dem Port verwechseln. Die digitalen Ports 1-8 sind die "Klemmen" 29-36 und werden im Programm mit Port[1] bis Port[8] angesprochen. Diese können einfach mit "on" und "off" geschaltet werden. define p1 as Port[1] p1=on pause 100 p1=off Das sind wirklich nur digitale Ports die nur sehr wenige mA an Strom vertragen. Die eingebauten LEDs und Relais sind die Ports 25 bis 32. Diese können nur als BytePort an der Station betrieben werden. Ein Byte=8Bit also Port 1-8 = Byteport[1] Port 9-16 = Byteport[2] Port 17-24 = Byteport[3] Port 25-32 = Byteport[4] dieses Byteport ist im Programm definiert Einen Port[29] gibt es eigentlich nicht, dieser heißt im Beispiel REL1. Also ist mir immer noch nicht klar was du eigentlich möchtest, soll der digitale Port 1 oder das Relais 1 geschaltet werden. Wenn Relais 1 dann: define zeit as word define SDA as port[9] define SCL as port[10] define EXTPORT as byteport[4] define STATION_IO as byte define LED1 ref STATION_IO at bit[1] define LED2 ref STATION_IO at bit[2] define LED3 ref STATION_IO at bit[3] define LED4 ref STATION_IO at bit[4] define REL1 ref STATION_IO at bit[5] define REL2 ref STATION_IO at bit[6] define REL3 ref STATION_IO at bit[7] define REL4 ref STATION_IO at bit[8] import "show_date.bas" import "show_time.bas" #init SDA=on SCL=on lcd.INIT lcd.clr Alarm() ' zum Test einmal schalten #loop lcd.pos 1, 1 show_time() lcd.pos 2, 1 show_date() if second=0 then if dow>=1 and dow<=5 then 'Mo=1 Fr=5 zeit=hour*100+minute if zeit=745 or zeit=915 or zeit=1100 or zeit=1245 or zeit=1445 or zeit=1500 or zeit=1630 then alarm() end if end if goto loop sub Alarm() REL1=on EXTPORT=STATION_IO pause 100 ' kleine Pause von 2s REL1=off EXTPORT=STATION_IO end sub Natürlich wird Alarm nur ausgeführt, wenn die Bedingungen (Uhrzeit und Tag) zutreffen. Die Funktion Alarm schaltet das Relais 1 für 2 Sekunden ein und kehrt dann zurück. Vor der Schleife habe ich mal einen Alarm-Aufruf eingefügt, damit wenigstens einmal beim Start der C-Control das REL1 geschaltet wird und die Funktion dadurch überprüft wird. Grüße Jörg |
Antwort schreiben |