RyujiAndy Inviato 1 Novembre 2012 Condividi Inviato 1 Novembre 2012 (modificato) Arduino UNO dispone di ben 6 pin PWM, una modulazione digitale che permette di ottenere una tensione media variabile, questo grazie alla variazione del tempo di un impulso, per capire meglio guardate la figura qui in basso, presa da wikipedia http://dl.dropbox.com/u/27772338/688px-PWM%2C_3-level_svg.png V è l'impuso emesso dal pin e B è la tensione media che si ottiene nell tempo sul carico, in questo caso un motore. Ora andiamo a vedere come possiamo utilizzare questa modulazione per poter variale l'illuminazione di un led con arduino. da notare che come l'esperimento precedente ho messo tra il catodo del LED e la massa una resistenza (circa 10kOhm), questo per regolare la corrente. Ora inizializziamo il piedino 9: void setup() { pinMode(9, OUTPUT); } Fin qui non cambia nulla, ora invece basta giocare sul valore di da assegnare al comando di uscita, usando un nuovo comando analogWrite(pin, valore); in questo comando vanno assegnati 2 valori il primo indica il pin dove abbiamo collegato il nostro led e il valore del ciclo pwm compreso tra 0 (sempre spento) e 255 (sempre acceso). quindi il nostro loop diventa: void loop() { for(int valore = 0; valore <= 255; valore++) { analogWrite(9, valore); delay(50); } delay(50); for(int valore = 255; valore >= 0; valore--) { analogWrite(9, valore); delay(50); } delay(50); } ora grazie ai due clicli "for" faccio aumentare il valore della frequenza del segnale pwm, nel primo caso, e nel secondo lo faccio decrescere, creando un effetto di accensione e spegnimento lento del led. Schetch completo: void setup() { pinMode(9, OUTPUT); } void loop() { for(valore = 0; valore <= 255; valore++) { analogWrite(9, valore); delay(50); } delay(50); for(int valore = 255; valore >= 0; valore--) { analogWrite(9, valore); delay(50); } delay(50); } Schema elettrico: Modificato 6 Dicembre 2012 da RyujiAndy Link al commento Condividi su altri siti Altre opzioni di condivisione...
danielee73 Inviato 6 Dicembre 2012 Condividi Inviato 6 Dicembre 2012 Ciao Anche quì ho notato la mancanza della variabile valore nel ciclo for. io l'ho corretta inserendo: int valore; prima del setup. In questa maniera non sono costretto a specificarlo a ogni ciclo for. Comunque mi stò divertendo con Arduino. Continua così. Ciao Link al commento Condividi su altri siti Altre opzioni di condivisione...
RyujiAndy Inviato 6 Dicembre 2012 Autore Condividi Inviato 6 Dicembre 2012 Chissa dove ho la testa.....mmmh Link al commento Condividi su altri siti Altre opzioni di condivisione...
Ospite Lixoende Inviato 1 Ottobre 2016 Condividi Inviato 1 Ottobre 2016 Come dimmare un LED con Ar Ciao a tutti ragazzi,non ho mai avuto esperienze con linux, solo Windows ma ho bisogno di provare lebbrezza di smanettare e linux и il sistema che fa per me. Ma che distro devo installare? E soprattutto come cimentarmi in questo? Se mi potete linkare qualche guida mi farebbe molto piacere. Grazie Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Crea un account o accedi per lasciare un commento
Devi essere un membro per lasciare un commento
Crea un account
Iscriviti per un nuovo account nella nostra community. È facile!
Registra un nuovo accountAccedi
Sei già registrato? Accedi qui.
Accedi Ora