Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Dimmerprogramm für Micro aber wie??? Kategorie: C-Control I Micro (von Kay - 27.04.2005 20:59)
 Als Antwort auf Re: Dimmerprogramm für Micro aber wie??? von Kay - 27.04.2005 9:50
Kay nutzt:  CC1-Unit V1.1
so.. ich denke, dass das programm soweit  selbstredend ist.
ich musstes dann doch  ganz anders machen als geplant, aber egal.

deine beiden tasten liegen  an den digitalports 1 und 2, wobei ich davon
ausgehe, das diese über 10-kOhm-pullups auf high gezogen werden
und  durch die taster auf LOW (so wie bei CControl üblich).
sie verhalten sich,  wie beschrieben. einen schönheitsfehler hat das
programm: es dimmt nicht in 60 minuten, sondern in 51 minuten auf 0.
das liegt an der ableitung von 5 digit pro vergangene minute. wenn dir
das so nicht genehem ist, gibt es eine möglichkeit, das präziser zu machen.
nicht getestet habe ich den fall, was passoert, wenn der dimmer bei 0
angekommen ist. ich lass den simulator aber mal laufen und schaus mir an.
ansonsten  viel spaß damit:


define dimtimeconst 3000 'Dimstufenzeit in 20-ms-Steps

define dimlev       byte 'Dimmerpegel

define diminproc    bit[192] 'Flag: on = ein Dimm-Prozess laeuft

define key_1     port[1]
define key_2     port[2]
define dimport   da[1]

deact key_1 : deact key_2


#MAIN         'Hauptschleife
   if not key_1 then gosub DIM
   if diminproc then gosub DIM
   if not key_2 then dimport = 0 else goto MAIN
   diminproc = off
   dimlev = 0
goto MAIN

   
#DIM
   if diminproc then goto make_dim
   diminproc = on
   dimport = 255
   dimlev = 255
   #make_dim
   if dimlev = 0 then goto dim_end
   if second <> 0 then goto dim_end
   dimlev = dimlev - 5
   dimport = dimlev
   print second;" ";dimlev
   wait second <> 0
   #dim_end
return

 Antwort schreiben

Bisherige Antworten: