Se sei già registrato           oppure    

Orario: 01/05/2024 01:59:56  

 

Energia Alternativa ed Energia Fai Da Te > PPTEA

VISUALIZZA L'ALBUM


PPTEA: Led RGB, E LUCE FU
FinePagina

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 27/2/2012,16:32

Dalla versione 2.10 del PPTEA si dispongono di 3 PWMindipendenti...come utilizzarli?
Iniziamo con una applicazione semplice semplice:gestiamo un led RGB.
Questi led possono essere utilizzati accendendo i relativi colori Rosso, Verde e Blu..ma agendo con un PWM possiamo regolare i livelli RGB e ,in linea teorica, riprodurre infiniti colori. Ho utilizzato un led che mi è statao regalato e l'effetto è notevole. Questo led ha 4 pin, un comune (che va collegato a positivo ) e tre pin :R,G,B che vanno posti a massa. Mettendo a massa (singolarmente e con una resistenza) R (RED) il led si accenderà con il colore Rosso, mettendo a massa G(GREEN) il led si accenderà di colore Verde , e mettendo a massa B (BLUE) il led si accenderà con il colore BLU.
Collegando contemporaneamente RG o facendo altre combinzioni dovremmo ottenere le varie combinazioni di colori...ma nel modello che ho non accade questo..ad esempio collegado contemporaneamnete tutti e 3 i pin RGB a massa ottengo un rosso chiaro...ma agendo con il PWM si ottengono i vari colori. Diciamo che ho dovuto fare diverse prove per trovare i livelli rgb adatti...ma l'effetto è notevole.
Ricordare quell'oggettino collegato alla doccia che si illuminava cambiando colore a seconda della temperatura dell'acqua...cioè diventava rosso se l'acqua era molto calda e era blu se l'acqua era fredda?
Possiamo dire che ora, con il PPTEA, si può realizzare facilmente. faccine/biggrin.gif
Bolle




Modificato da NonSoloBolleDiAcqua - 27/2/2012, 16:57


---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 27/2/2012,17:46

Questo è il led:
ForumEA//img3/7066/ledrgbb.jpg
Questo è il codice:

CODICE
10 'GESTIONE LED RGB MEDIANTE PWM DALLA VERSIONE 2.10 DEL PPTEA
20 CADS=1
30 SETIO=&H0001
40 PWMIO1=&H0008 ' ASSOCIO IL PRIMO PWM AL BIT 3 (PIN 5)
50 PWMIO2=&H0002 ' ASSOCIO AL SECONDO PWM IL BIT 2 (PIN $
60 PWMIO3=&H0004 ' ASSOCIO AL SECONDO PWM IL BIT 1 (PIN 3)
70 PWMFQ1=7

89  'ROSSO
90  VR=255
100 VG=0
110 VB=0
120 GOSUB  420

139  'VERDE
140 VR=0
150 VG=255
160 VB=0
170 GOSUB  420

189  'BLU
190 VR=0
200 VG=0
210 VB=255
220 GOSUB  420

289 'GIALLO
290 VR=70
300 VG=70
310 VB=0
320 GOSUB  420

321 'A
ZZURRO
322 VR=0
323 VG=70
324 VB=70
325 GOSUB  420

339 'VIOLA
340 VR=70
350 VG=0
360 VB=70
370 GOSUB  420


390 GOTO 390

420 ' Setto il colore del LED
430 PWMDC1=INT(100-VR*100/255)
440 PWMDC2=int(100-VG*100/255)
450 PWMDC3=int(100-VB*100/255)
455 WAITMS 1500
460 RETURN


Lo schema è abbastanza intuitivo...se avete dubbi...chiedete pure.
Quanto prima posto un video.
Bolle








---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 27/2/2012,23:09

Vediamo ora le sfumature passando da un colore all'altro.Si parte dal bianco si passa al viola poi al blu poi al rosso giallo e infine al verde...senza l'utilizzo dei PWM queste sfumature (che nel video si vedono poco e male) non sarebe possibile riprodurle.


Questo il codice:
CODICE
10 ' RGB VARIAZIONE DI COLORI DALLA VERSIONE 2.10
20 cads=1
30 SETIO=&H0001
40 PWMIO1=&H0008 ' ASSOCIO IL PRIMO PWM AL BIT 3 (PIN 5)
50 PWMIO2=&H0002 ' ASSOCIO AL SECONDO PWM IL BIT 2 (PIN $
60 PWMIO3=&H0004 ' ASSOCIO AL SECONDO PWM IL BIT 1 (PIN 3)
70 PWMFQ1=7

385 A=40
386 VR=40
387 VG=A
388 VB=40
389 A--
390 gosub 530
391 if a<=0 then 395
392 goto 386


395 A=40
396 VR=A
397 VG=0
398 VB=40
399 A--
400 gosub 530
401 if a<=0 then 405
402 goto 396

405 A=0
406 VR=A
407 VG=0
408 VB=40-A
409 A++
410 gosub 530
411 if a>=40 then 415
412 goto 406

415 A=0
416 VR=40-A
417 VG=A
418 VB=0
419 A++
420 gosub 530
421 if a>=40 then 490
422 goto 416

490 GOTO 490

530 PWMDC1=INT(100-VR*100/255)
540 PWMDC2=int(100-VG*100/255)
550 PWMDC3=int(100-VB*100/255)
560 RETURN

Bolle



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

jumpy75

Avatar
GigaWatt


Gruppo:MODERATORE
Messaggi:686

Stato:



Inviato il: 28/2/2012,08:13

Buon giorno Bolle, complimenti per l'esempio, è veramente notevole il funzionamento del PWM!

PS: alla riga 50 ho trovato un errore di digitazione......


CODICE
50 PWMIO2=&H0002 ' ASSOCIO AL SECONDO PWM IL BIT 2 (PIN $


Credo la versione corretta è:

CODICE
50 PWMIO2=&H0002 ' ASSOCIO AL SECONDO PWM IL BIT 2 (PIN 4)


Altrimenti per i meno esperti può confondere.....

Jumpy

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 28/2/2012,08:33

Giustissimo Jumpy!!!
Grazie faccine/smile.gif



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

jumpy75

Avatar
GigaWatt


Gruppo:MODERATORE
Messaggi:686

Stato:



Inviato il: 28/2/2012,09:22

Di nulla Bolle, è sempre un piacere!!!

:-)

 
 InizioPagina
 

Versione Mobile!

Home page       TOP100-SOLAR      Home page forum