1. katse LED dioodid ja RGB LED

Katse 1.1 LED kasutamine

Nuppu vajutatud

Nuppu ei ole vajutatud

void setup()

{
  
  pinMode(13, OUTPUT);  

}

void loop()

{

  digitalWrite(13, HIGH);   

  delay(1000);               

  digitalWrite(13, LOW);   

  delay(1000);              

}

Scheme 1

Katse 1.2 RGB LED kautamine

pärast sisselülitamist süttib alati erinevate värvidega kui eelnevalt määratud värvid.

const int RED_PIN = 11;

const int GREEN_PIN = 9;

const int BLUE_PIN = 10;

int DISPLAY_TIME = 100;  

void setup()

{

  pinMode(RED_PIN, OUTPUT);

  pinMode(GREEN_PIN, OUTPUT);

  pinMode(BLUE_PIN, OUTPUT);

}

void loop()

{

// Мы создали функцию с именем mainColors (), которая проходит через  все восемь цветов. Здесь мы только вызываем нашу функцию, Сам же код функции находится ниже.

mainColors();

// Эта функция включает и выключает отдельно каждый светодиод либо Вкл., либо Выкл. Если вы хотите получить больше чем восемь цветов, вам придется

// изменять еще и яркость каждого светодиода. Для этого можно воспользоваться

// функцию analogWrite(), - градация яркости от 0 до 255. Далее идет функция

}

void mainColors()

{

// Выкл. – все светодиоды выключены

  digitalWrite(RED_PIN, LOW);

  digitalWrite(GREEN_PIN, LOW);

  digitalWrite(BLUE_PIN, LOW);

 delay(1000);

// Включаем КРАСНЫЙ – RED_PIN, HIGH.

  digitalWrite(RED_PIN, HIGH);

  digitalWrite(GREEN_PIN, LOW);

  digitalWrite(BLUE_PIN, LOW);

  delay(1000);

// Включаем ЗЕЛЕНЫЙ – GREEN_PIN, HIGH.

  digitalWrite(RED_PIN, LOW);

  digitalWrite(GREEN_PIN, HIGH);

  digitalWrite(BLUE_PIN, LOW);

  delay(1000);

// Включаем СИНИЙ – BLUE_PIN, HIGH.

  digitalWrite(RED_PIN, LOW);

  digitalWrite(GREEN_PIN, LOW);

  digitalWrite(BLUE_PIN, HIGH);

  delay(1000);

// Включаем ЖЕЛТЫЙ – RED и GREEN HIGH.

  digitalWrite(RED_PIN, HIGH);

  digitalWrite(GREEN_PIN, HIGH);

  digitalWrite(BLUE_PIN, LOW);

  delay(1000);

// БИРЮЗОВЫЙ – GREEN и BLUE

  digitalWrite(RED_PIN, LOW);

  digitalWrite(GREEN_PIN, HIGH);

  digitalWrite(BLUE_PIN, HIGH);

  delay(1000);

//РОЗОВЫЙ – RED и BLUE

  digitalWrite(RED_PIN, HIGH);

  digitalWrite(GREEN_PIN, LOW);

  digitalWrite(BLUE_PIN, HIGH);

  delay(1000);

//БЕЛЫЙ – все цвета HIGH (Вкл.)

  digitalWrite(RED_PIN, HIGH);

  digitalWrite(GREEN_PIN, HIGH);

  digitalWrite(BLUE_PIN, HIGH);

  delay(1000);

}

ka RGB-ga

Scheme 2

void loop()

{

// Мы создали функцию с именем mainColors (), которая проходит через  все восемь цветов. Здесь мы только вызываем нашу функцию, Сам же код функции находится ниже.


// Эта функция включает и выключает отдельно каждый светодиод либо Вкл., либо Выкл. Если вы хотите получить больше чем восемь цветов, вам придется

// изменять еще и яркость каждого светодиода. Для этого можно воспользоваться

// функцию analogWrite(), - градация яркости от 0 до 255. Далее идет функция

// с именем showSpectrum (), которая плавно проследует через каждый из 8 цветов. ее,  код находится ниже.

  showSpectrum();

}
// Ниже приведен код еще двух функций:  ShowSpectrum () и showRGB().  ShowRGB () - выводит один цвет на светодиод.  ShowSpectrum () выводит все цвета по очереди – радуга. 

void showSpectrum()

{

  int x;

  for (x = 0; x < 768; x++)

  {

    showRGB(x);  // Вызов RGBspectrum() сновым значением x

    delay(10);   // Пауза 10 ms (1/100 секунды)

  }

}

// ShowRGB() 

// Базовые цифры: 

// 0 = чистый красный 

// 255 = чистый зеленый 

// 511 = чистый синий 

// 767 = чистый красный (опять же) 

void showRGB(int color)

{

  int redIntensity;

  int greenIntensity;

  int blueIntensity;

  if (color <= 255)                

  {

    redIntensity = 255 - color;    // красный меняется из включенного на выключенный    

    greenIntensity = color;        // зеленый меняется из выключенного на включенный

    blueIntensity = 0;             // голубой всегда выключен

  }

  else if (color <= 511)          

  {

    redIntensity = 0;                     // красный всегда выключен

    greenIntensity = 255 - (color - 256); // зеленый от включенного к выключенному

    blueIntensity = (color - 256);        // голубой от выключенного к включенному

  }

  else if (color >= 512)             

  {

    redIntensity = (color - 512);         // красный выкл. К вкл.

    greenIntensity = 0;                   // зеленый всегда выкл.

    blueIntensity = 255 - (color - 512);  // голубой от вкл. К выкл.

  }

  analogWrite(RED_PIN, redIntensity);

  analogWrite(BLUE_PIN, blueIntensity);

  analogWrite(GREEN_PIN, greenIntensity);

}

Uued funktsioonid:

pinMode(pin,reziim) //INPUT, OUTPUT
setup() — sätted
loop() — põhifunkstioonid, alati töötab
digitalWrite (pin,pinge) // HIGH, LOW
delay(aeg) //ms 1000 = 1s
analogWrite (pin,pinge) //0,255

Ülesanne 1.3 Valgusfoor

Komponeendid:

  • Arduino Uno
  • Arendusplaat
  • LED
  • Takisti
  • Juhtmed

Scheme

programmi käivitamisel süttib roheline tuli autode jaoks ja punane tuli inimeste jaoks kahe sekundi pärast kollane tuli 1 sekund pärast kollase tule punaseks autode jaoks ja roheline inimeste jaoks 2 sekundit pärast öösel langeb ja 5 sekundit kollane tuli vilgub liiklusvalguses autode jaoks ja lülitub välja inimeste jaoks

Video:

programm:

const int pedestrianGreenLED = 2;
const int pedestrianRedLED = 3;

const int carGreenLED = 5;
const int carYellowLED = 6;
const int carRedLED = 7;

void loop() { // Siin aktiveeritakse kordamööda kõik allpool kirjeldatud funktsioonid, mõnikord koos sisuga, et teha valgusfoori
  
  pedestrianTraffic(); 
  
  carTraffic();
  
  delay(2000); 
  
  carYellow();
  
  delay(1000); 
  
  pedestrianTraffic();
  
  switchTraffic();
  
  delay(2000);
  
  pedestrianTrafficNight();
  
  carYellow();
  
  for (int i = 0; i < 5; i++) { // Siin ma tegin ilma funktsioonideta ja panin lihtsalt funktsiooni lõppu, et lülitada auto valgus öisele      // režiimile, kus see vilgub 5 sekundit.
    digitalWrite(carYellowLED, HIGH);
    delay(500);
    digitalWrite(carYellowLED, LOW);
    delay(500);
  }
  
}

void setup() {
  pinMode(pedestrianGreenLED, OUTPUT);
  pinMode(pedestrianRedLED, OUTPUT);
  pinMode(carGreenLED, OUTPUT);
  pinMode(carYellowLED, OUTPUT);
  pinMode(carRedLED, OUTPUT);
}

void pedestrianTraffic() { //funktsioon, et lülitada inimeste jaoks valgus punaseks
  digitalWrite(pedestrianGreenLED, LOW); // roheline kustub
  digitalWrite(pedestrianRedLED, HIGH); // punane tuli põleb
}

void pedestrianTrafficNight() { // funktsioon inimeste tulede lülitamiseks öörežiimile, kus kõik on välja lülitatud
  digitalWrite(pedestrianGreenLED, LOW);
  digitalWrite(pedestrianRedLED, LOW);
}


void carTraffic() { // funktsioon, et lülitada valgusfoori roheliseks autode jaoks
  digitalWrite(carGreenLED, HIGH); // rohelised tuled
  digitalWrite(carYellowLED, LOW); // kollane 
  digitalWrite(carRedLED, LOW); // ja punane kustuvad
}

void carYellow() { // funktsioon autode kollaste tulede sisselülitamiseks
  digitalWrite(carGreenLED, LOW); // roheline kustub
  digitalWrite(carYellowLED, HIGH); // kollased tuled
  digitalWrite(carRedLED, LOW); // punane kustub
}

void switchTraffic() { // Funktsioon värvide muutmiseks 1 hetkel mõlemal fooritulestikul
  digitalWrite(pedestrianGreenLED, HIGH); // süttib inimeste jaoks roheliselt
  digitalWrite(pedestrianRedLED, LOW); // punane läheb inimeste jaoks välja
  digitalWrite(carGreenLED, LOW); // rohelised ja
  digitalWrite(carYellowLED, LOW); // kollased tuled kustuvad autode jaoks
  digitalWrite(carRedLED, HIGH); // süttib autode jaoks punase tulega
}

Siin on viis võimalust LED-ide kasutamiseks igapäevaelus:

  1. Valgustus: LED-lambid on muutunud populaarseks valgustusvahendiks tänu oma energiasäästlikkusele ja pikaajalisele vastupidavusele. Neid kasutatakse kodudes, kontorites ja avalikes kohtades.
  2. Ekraanid: LED-ekraane kasutatakse suurepäraste pildikvaliteedi ja energiasäästlikkuse tõttu. Need on levinud digitaalsete reklaamide, telesaadete ja spordiareenide juures.
  3. Autod: LED-tuled on muutunud üha populaarsemaks autode esitulede ja tagatulede valgustuseks. Need on eriti populaarsed spordi- ja luksusautode hulgas.
  4. Kodutehnika: LED-id on muutunud standardiks kodumasinate ekraanidel. Need annavad teavet masina oleku kohta ja on väga energiasäästlikud.
  5. Nutitelefonid: LED-tuled on kaasatud nutitelefonide kaamerate välklampidesse. Need tagavad hämaras või pimedas pildistamisel parema valgustuse.

jne.