Preuzmi .fzz Preuzmi .ino
Preuzmi shemu spajanja u Fritzingu    Preuzmi programski kod za Arduino

 

 

POGLAVLJE 6 - Zadatak 28:

Na izvode mikrokontrolera s mogućnošću pulsno-širinske modulacije spojite dvije svjetleće diode. Napišite program koji će mijenjati jačinu svjetlosti svjetlećih dioda od 0% do 100% pa od 100% do 0% u jednakim koracima. Kada svjetleća dioda postigne maksimalni intenzitet svjetlosti neka se jačina svjetlosti ponovno spusti do 0% u jednakim koracima. Svjetleće diode rade u kontrafazi. Kada je prva svjetleća dioda na jačini svjetlosti od 0%, druga mora biti na jačini od 100% i obrnuto.

SHEMA:

EKSPERIMENTALNA PLOČICA:

RJEŠENJE:

int led1 = 3;                       //definiraj led1 = 3
int led2 = 5;                       //definiraj led2 = 5
int jacina;                         //definiraj varijablu jacina

void setup() {
  pinMode(led1, OUTPUT);            //postavi izvod led1 kao izlazni
  pinMode(led2, OUTPUT);            //postavi izvod led2 kao izlazni
  digitalWrite(led1, LOW);          //isključi LED diodu 1 - početno stanje
  digitalWrite(led2, LOW);          //isključi LED diodu 2 - početno stanje
}

void loop() { 
  for (jacina=0;jacina<256;jacina++){ 
                                    //vrti varijablu jacina od 0 do 255 u koracima od 1
    analogWrite(led1, jacina);      //LED 1 mijenja jačinu svijetla
    analogWrite(led2, 255-jacina);  //LED 2 mijenja jačinu svijetla
    delay(20);                      //čekam 20 ms
  } 
  
  for (jacina=255;jacina>0;jacina--){ 
                                    //vrti varijablu jacina od 255 do 0 u koracima od 1
    analogWrite(led1, jacina);      //LED 1 mijenja jačinu svijetla
    analogWrite(led2, 255-jacina);  //LED 2 mijenja jačinu svijetla
    delay(20);                      //čekam 20 ms
  }
}

Autor: Paolo Zenzerović