Regulador de llum

De El raconet d'en Jordi

Dreceres ràpides: navegació, cerca

Contingut

Requeriment

Es tracta de regular amb un potenciòmetre, la intensitat de llum emesa per un LED. Per encendre i apagar el LED ha d’haver-hi un polsador. Una versió més completa podria anar així. El llum es genera amb 3 LEDs, de manera que per valors baixos del potenciòmetre, s'encén únicament un LED de forma progressiva. Per valors alts encenem al 100% un, dos o els tres LEDs.

Placa de desenvolupament

Podem aprofitar el LED al pin2 per a la sortida,i el polsador al pin3. Ens caldrà un potenciòmetre que pot substituir a la placa de prototips la LDR al pin4. Per tant posarem els interruptors 2 i 3 a ON, i el 4 a OFF. El potenciòmetre el connectarem als forats F3 (cursor), H2 i H4. Posarem ponts entre D2 i J4 i entre E1 i J2. La placa AXE-092 la connectarem a B1-B10.


Programa

' Regulador de llum
main:
label_10: if pin3=0 then label_10
label_15: if pin3=1 then label_15
label_20:
      readadc 4,b0
      pwmout 2,255,b0
      if pin3=1 then label_30
      goto label_20
label_30: pwmout 2,0,0
label_40: if pin3=1 then label_40
      goto label_10


Placa de producció

Ens podrem estalviar els components de programació.


Versió millorada amb 3 LEDs

Aquesta versió la podem comprovar directament a la placa AXE-092. El brunzidor associat al pin2 farà un soroll que haurem de suportar.

Programa

' Regulador de llum
main:
label_10:  if pin3=0 then label_10
label_15:  if pin3=1 then label_15
label_20:
           if pin3=1 then label_99
           readadc 4,b0
           b1=2*b0
           if b0<127 then label_25
           pwmout 2,0,0
           low 1
           low 0
           high 2
           if b0<168 then label_20
           high 1
           if b0<201 then label_20
           high 0
           goto label_20
label_25:  low 2
           low 1
           low 0
           pwmout 2,255,b1
           goto label_20
label_99:  pwmout 2,0,0
           low 2
           low 1
           low 0
label_100: if pin3=1 then label_100
           goto label_10



Tornar a l'índex