
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
> > Hat sich damit mal jemand befasst? > > Mich würde eine Möglichkeit FS20-Geräte anzubinden wirklich interessieren. > > Leider hab ich noch keinerlei Erfahrungen mit Assembler-Modulen. > > Ich fürchte in reinem Basic kann man das FS 20 Protokoll nicht auswerten oder ? > > Ich hab's mir einfach gemacht und bediene einen FS20-Unterputzsender (über Putz) über Relais mit der CC1-Station um meine diversen FS20-Empfänger (Rollladensteuerung) zu schalten. > > HTH > > Bye > Achim Ok, Ich träum aber schon von einem Universal Sender/Empfänger ;-) Ein bisschen hab ich schon versucht in Basic zu schreiben, um das Sendersignal auszulesen: define LIGHT as port[16] define FTIMER as word[4] ' RESERVIERT VOM TREIBER '-- SYSTEM ROUTINEN ------- CONST CLR_FTIMER = FD98h CONST GET_FTIMER = FD89h CONST NO_INT = FD85h CONST YES_INT = FD87h import "..\LIB\SERVOMODE.BAS" '-------------------------------------------------------------------- ' HOCHAUFLÖSENDER TIMER '-------------------------------------------------------------------- ' --------- SYS INIT -------- SERVOMODE () LCD.INIT LIGHT=off dim x as byte dim oldbit as bit dim ioport as port[1] dim wert as byte oldbit = ioport #LOOP WAIT oldbit <> ioport 'or timer > 0 SYS CLR_FTIMER ' 1us TIMER UND 20ms TIMER 'Eine Perionde warten WAIT oldbit = ioport 'or timer > 0 WAIT oldbit <> ioport 'or timer > 0 'Timer stoppen SYS NO_INT '32us SYS GET_FTIMER ' WERTE DER TIMER SICHERN 'Bestimmen ob es ein HighBit oder ein LowBit war ( wert=2 : ungültige Perionenlänge ) if FTIMER < 600 then wert = 2 if FTIMER > 600 then wert = 0 if FTIMER > 1000 then wert = 1 if FTIMER > 1450 then wert = 2 'Zeit und Wert ausgeben LCD.POS 1,1 '---------- n*20 ms VOM TIMER BERECHNEN ----------------------------- SYS YES_INT LCD.PRINT "ZEIT: " & FTIMER & "." LCD.POS 2,1 LCD.PRINT "Wert: " & wert pause 20 'Nächste Periode messen goto LOOP '--------- GERÄTETREIBER LADEN ---------- syscode "M20_UTIL11_PAGE0.s19" Hier nutze ich das Util1.1 zum Messen der Zeiten. Zumindest kann ich schon einmal High von Low-Bits unterscheiden. Aber das stößt schon sehr an die Grenzen von Basic. Hat keiner eine bessere Idee, wie das besser zu lösen ist ? |
| Antwort schreiben |