/*
* LED fenyerejenek valtoztatasa potenciometer-rel
*/
int potPin = 5; // potenciometer A5-re kotve
int val; // valtozo a mert ADC ertek tarolasara
int ledPin = 9; // LED Pin9-re kotve
void setup()
{
pinMode(ledPin, OUTPUT); // a LED-hez tartozo lab kimenet
}
void loop()
{
val = analogRead(potPin); // ADC ertek beolvasasa
analogWrite(ledPin,val/4); // LED-nek PWM jel
delay(100); // varakozas
}
A kód megméri a potenciométer feszültségét, és egy azzal arányos kitöltési tényezőjű PWM jelet ad a LED-re. Az ADC 0-1023 közé eső számot ad végeredményül, a PWM-nek az analogWrite() utasításban viszont egy 0-255 közé eső számot kell megadni paraméterként. Ezért az ADC eredményét el kell osztani 4-el, hogy 0-255 közé eső számot kapjunk. A potencimétert tekergetve a LED fényereje változtatható.

Niciun comentariu:
Trimiteți un comentariu