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 

 Dimmerprogramm >Revision< Kategorie: C-Control I Micro (von Kay - 27.04.2005 23:52)
 Als Antwort auf Re: Dimmerprogramm für Micro aber wie??? von Kay - 27.04.2005 9:50
Kay nutzt:  CC1-Unit V1.1
sorry.. das kannste knicken da unten - kommt davon, wenn mans
nicht vollständig testet. nach beendigung des vorgangs erhing sich
der spaß. habs also umgebastelt: der vorteil dabei:

1. jetzt dimmt das ding wirklich eine stunde lang,  die zeit kannst du
nach bedarf ändern, indem du die konstante variierst.
(alle dt_const * 20 ms wird ein digit reduziert)
2. das programm läuft jetzt unabhängig von der systemuhr und muss
deshalb auch nich zwischendurch angehalten werden. es kann also
in der hauptschleife und durch weitere subroutinen locker erweitert
werden.

das isses:


define dt_const 706  'Dimmerregelzeit-Konstante (20-ms-steps)

define timerini  word
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

#DIM_RESET
   diminproc = off
   dimlev = 0
   dimport = 0

#MAIN         'Hauptschleife
   if not key_1 then gosub DIM_START
   if not key_2 then goto DIM_RESET
   if diminproc then gosub DIM_DO
goto MAIN

   
#DIM_START
   diminproc = on
   dimlev = 255
   dimport = 255
   timerini = timer
   #DIM_DO
   if dimlev = 0 then goto DIM_END
   if abs (timer - timerini) < dt_const then goto DIM_END
   timerini = timer
   dimlev = dimlev - 1
   dimport = dimlev
   if dimlev = 0 then diminproc = off
   #DIM_END
return

 Antwort schreiben

Bisherige Antworten: