Mundarija:

Arduino Uno R3 bilan RGB LED: 7 qadam
Arduino Uno R3 bilan RGB LED: 7 qadam

Video: Arduino Uno R3 bilan RGB LED: 7 qadam

Video: Arduino Uno R3 bilan RGB LED: 7 qadam
Video: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, Noyabr
Anonim
Arduino Uno R3 bilan RGB LED
Arduino Uno R3 bilan RGB LED

Ilgari biz PWM texnologiyasidan foydalanib, LEDni yoritish va xiralashtirishni boshqarardik. Bu darsda biz uni har xil rangdagi miltillash uchun RGB LEDni boshqarish uchun ishlatamiz. LEDning R, G va B pinlariga har xil PWM qiymatlari o'rnatilsa, uning yorqinligi boshqacha bo'ladi. Uch xil rang aralashganda, biz RGB LEDining turli xil ranglarda yonib turishini ko'ramiz.

1 -qadam: komponentlar

- Arduino Uno taxtasi * 1

- USB kabeli * 1

- Rezistor (220Ω) * 1

- RGB LED * 3

- Non paneli * 1

- o'tish simlari

2 -qadam: printsip

RGB LED qizil, ko'k va yashil LEDlarni bildiradi. RGB diodli LED

qizil, yashil va ko'k 3 ta asosiy rangni aralashtirib, turli xil ranglarni chiqaradi. Shunday qilib, u bitta qutiga o'ralgan qizil, yashil va ko'k rangdagi 3 ta alohida LEDdan iborat. Shuning uchun u 4 ta simga ega, har 3 ta rang uchun bitta sim va RGB LED turiga qarab bitta umumiy katod yoki anod. Ushbu qo'llanmada men umumiy katoddan foydalanaman.

3 -qadam: sxematik diagramma

Sxematik diagramma
Sxematik diagramma

4 -qadam: protseduralar

Protseduralar
Protseduralar
Protseduralar
Protseduralar

Ushbu tajribada biz PWM -dan ham foydalanamiz, agar siz shu paytgacha darslarni kuzatgan bo'lsangiz, siz allaqachon asosiy tushunchaga egasiz. Bu erda biz RGB LEDining uchta piniga 0 dan 255 gacha bo'lgan qiymatni kiritamiz, shunda u turli ranglarni ko'rsatadi. R, G va B pimlarini tokni cheklovchi rezistorga ulagandan so'ng, ularni mos ravishda pin 9, pin 10 va pin 11 ga ulang. LEDning eng uzun pimi (GND) Unoning GND ga ulanadi. Uch pinga har xil PWM qiymatlari berilganida, RGB LED turli ranglarni ko'rsatadi.

1 -qadam:

Zanjirni yarating.

2 -qadam:

Kodni https://github.com/primerobotics/Arduino saytidan yuklab oling

3 -qadam:

Eskizni Arduino Uno taxtasiga yuklang

Kodni boshqaruv paneliga yuklash uchun Yuklash belgisini bosing.

Agar oynaning pastki qismida "Yuklandi" tugmasi paydo bo'lsa, bu eskiz muvaffaqiyatli yuklanganligini bildiradi.

Bu erda siz birinchi navbatda qizil, yashil va ko'k, so'ngra qizil, to'q sariq, sariq, yashil, ko'k, indigo va binafsha rangdagi RGB LED chirog'ini aylana shaklida ko'rishingiz kerak.

5 -qadam: kod

// RGBLED

//

RGB LED birinchi navbatda qizil, yashil va ko'k, keyin qizil, to'q sariq, sariq, yashil, ko'k, indigo va binafsha rangda ko'rinadi.

// Veb -sayt: www.primerobotics.in

/*************************************************************************/

const

int redPin = 11; // RGB LED modulidagi R petal raqamli pin 11 ga ulangan

const

int greenPin = 10; // RGB LED modulidagi G petal raqamli pin 10 ga ulangan

const

int bluePin = 9; // RGB LED modulidagi B petal raqamli pin 9 ga ulangan

/**************************************************************************/

bo'sh

sozlash()

{

pinMode (redPin, OUTPUT); // redPin -ni o'rnatadi

chiqish bo'lishi

pinMode (greenPin, OUTPUT); // ni o'rnatadi

greenPin chiqish bo'lishi kerak

pinMode (bluePin, OUTPUT); // bluePin -ni o'rnatadi

chiqish bo'lishi

}

/***************************************************************************/

bo'sh

loop () // qayta -qayta ishga tushirish

{

// Asosiy ranglar:

rang (255, 0, 0); // RGB LEDini qizil rangga aylantiring

kechikish (1000); // 1 soniya kechiktirish

rang (0, 255, 0); // RGB LEDini yoqing

yashil

kechikish (1000); // 1 soniya kechiktirish

rang (0, 0, 255); // RGB LEDini yoqing

ko'k

kechikish (1000); // 1 soniya kechiktirish

// Aralash ranglarga misol:

rang (255, 0, 252); // RGB LEDini yoqing

qizil

kechikish (1000); // 1 soniya kechiktirish

rang (237, 109, 0); // RGB LEDini yoqing

apelsin

kechikish (1000); // 1 soniya kechiktirish

rang (255, 215, 0); // RGB LEDini yoqing

sariq

kechikish (1000); // 1 soniya kechiktirish

rang (34, 139, 34); // RGB LEDini yoqing

yashil

kechikish (1000); // 1 soniya kechiktirish

rang (0, 112, 255); // RGB LEDini ko'k rangga aylantiring

kechikish (1000); // 1 soniya kechiktirish

rang (0, 46, 90); // RGB LED indigosini aylantiring

kechikish (1000); // 1 soniya kechiktirish

rang (128, 0, 128); // RGB LEDini yoqing

siyohrang

kechikish (1000); // 1 soniya kechiktirish

}

/******************************************************/

bo'sh

rang (belgisiz char qizil, belgisiz char yashil, belgisiz char ko'k) // rang hosil qilish funktsiyasi

{

analogWrite (redPin, qizil);

analogWrite (greenPin, yashil);

analogWrite (bluePin, ko'k);

}

/******************************************************/

Tavsiya: