RGB LED พร้อม Arduino Uno R3: 7 ขั้นตอน
RGB LED พร้อม Arduino Uno R3: 7 ขั้นตอน
Anonim
RGB LED พร้อม Arduino Uno R3
RGB LED พร้อม Arduino Uno R3

ก่อนหน้านี้ เราได้ใช้เทคโนโลยี PWM เพื่อควบคุมความสว่างของ LED และหรี่แสง ในบทเรียนนี้ เราจะใช้มันเพื่อควบคุม RGB LED เพื่อกะพริบสีต่างๆ เมื่อตั้งค่า PWM ที่แตกต่างกันเป็นพิน R, G และ B ของ LED ความสว่างจะแตกต่างกัน เมื่อนำสีที่ต่างกันสามสีมาผสมกัน เราจะเห็นได้ว่าไฟ LED RGB จะกะพริบเป็นสีต่างๆ

ขั้นตอนที่ 1: ส่วนประกอบ

- บอร์ด Arduino Uno * 1

- สาย USB * 1

- ตัวต้านทาน (220Ω) * 1

- ไฟ LED RGB * 3

- เขียงหั่นขนม * 1

- สายจัมเปอร์

ขั้นตอนที่ 2: หลักการ

RGB LED หมายถึง LED สีแดง สีน้ำเงิน และสีเขียว RGB LED can

ปล่อยสีต่างๆ โดยผสม 3 สีพื้นฐาน แดง เขียว และน้ำเงิน ดังนั้นจึงประกอบด้วย LED 3 ดวงที่แยกจากกัน สีแดง สีเขียว และสีน้ำเงินที่บรรจุในกล่องเดียว นั่นเป็นเหตุผลที่มี 4 ลีด หนึ่งลีดสำหรับ 3 สีแต่ละสี และแคโทดหรือแอโนดทั่วไปหนึ่งอัน ขึ้นอยู่กับประเภท RGB LED ในบทช่วยสอนนี้ ฉันจะใช้แคโทดทั่วไป

ขั้นตอนที่ 3: แผนผังไดอะแกรม

แผนผังไดอะแกรม
แผนผังไดอะแกรม

ขั้นตอนที่ 4: ขั้นตอน

ขั้นตอน
ขั้นตอน
ขั้นตอน
ขั้นตอน

ในการทดลองนี้ เราจะใช้ PWM ด้วย ซึ่งหากคุณได้ปฏิบัติตามบทเรียนมาแล้ว แสดงว่าคุณมีความเข้าใจพื้นฐานแล้ว ที่นี่เราป้อนค่าระหว่าง 0 ถึง 255 ถึงสามพินของ RGB LED เพื่อให้แสดงสีที่ต่างกัน หลังจากเชื่อมต่อพินของ R, G และ B กับตัวต้านทานจำกัดกระแสแล้ว ให้เชื่อมต่อพวกมันกับพิน 9, พิน 10 และพิน 11 ตามลำดับ พินที่ยาวที่สุด (GND) ของ LED เชื่อมต่อกับ GND ของ Uno เมื่อพินทั้งสามได้รับค่า PWM ที่แตกต่างกัน ไฟ LED RGB จะแสดงสีที่ต่างกัน

ขั้นตอนที่ 1:

สร้างวงจร.

ขั้นตอนที่ 2:

ดาวน์โหลดโค้ดจาก

ขั้นตอนที่ 3:

อัปโหลดภาพร่างไปยังบอร์ด Arduino Uno

คลิกไอคอนอัปโหลดเพื่ออัปโหลดรหัสไปยังแผงควบคุม

หาก "เสร็จสิ้นการอัปโหลด" ปรากฏที่ด้านล่างของหน้าต่าง แสดงว่าอัปโหลดภาพร่างสำเร็จแล้ว

ในที่นี้คุณควรเห็นไฟ LED RGB กะพริบเป็นวงกลมเป็นสีแดง เขียว และน้ำเงินก่อน จากนั้นจึงเปลี่ยนเป็นสีแดง ส้ม เหลือง เขียว น้ำเงิน คราม และม่วง

ขั้นตอนที่ 5: รหัส

// RGBLED

//NS

RGB LED จะปรากฏเป็นสีแดง สีเขียว และสีน้ำเงินก่อน จากนั้นจึงสีแดง สีส้ม สีเหลือง สีเขียว สีฟ้า สีคราม และสีม่วง

//เว็บไซต์:www.primerobotics.in

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

const

int redPin = 11; // R กลีบบนโมดูล RGB LED เชื่อมต่อกับพินดิจิตอล 11

const

int greenPin = 10; // G petal บนโมดูล RGB LED ที่เชื่อมต่อกับพินดิจิตอล 10

const

int bluePin = 9; // B กลีบดอกไม้บนโมดูล RGB LED ที่เชื่อมต่อกับพินดิจิตอล 9

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

โมฆะ

ติดตั้ง()

{

โหมดพิน (redPin, เอาต์พุต); // ตั้งค่า redPin

ให้เป็นผลผลิต

โหมดพิน (กรีนพิน, เอาต์พุต); // ตั้งค่า

greenPin เพื่อเป็นเอาต์พุต

โหมดพิน (บลูพิน, เอาต์พุต); // ตั้งค่า bluePin

ให้เป็นผลผลิต

}

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

โมฆะ

loop() // วิ่งซ้ำแล้วซ้ำอีก

{

// สีพื้นฐาน:

สี (255, 0, 0); // เปลี่ยน RGB LED เป็นสีแดง

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(0, 255, 0); // หมุน RGB LED

เขียว

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(0, 0, 255); // หมุน RGB LED

สีฟ้า

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

// ตัวอย่างสีผสม:

สี(255, 0, 252); // หมุน RGB LED

สีแดง

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(237, 109, 0); // หมุน RGB LED

ส้ม

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(255, 215, 0); // หมุน RGB LED

สีเหลือง

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(34, 139, 34); // หมุน RGB LED

เขียว

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(0, 112, 255); // เปลี่ยน RGB LED เป็นสีน้ำเงิน

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี(0, 46, 90); // หมุน RGB LED indigo

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

สี (128, 0, 128); // หมุน RGB LED

สีม่วง

ล่าช้า (1000); // หน่วงเวลา 1 วินาที

}

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

โมฆะ

สี (สีแดงถ่านที่ไม่ได้ลงนาม สีเขียวถ่านที่ไม่ได้ลงชื่อ สีน้ำเงินถ่านที่ไม่ได้ลงชื่อ) // ฟังก์ชันการสร้างสี

{

analogWrite (หมุดสีแดง, สีแดง);

analogWrite (greenPin, สีเขียว);

analogWrite (บลูพิน, น้ำเงิน);

}

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

แนะนำ: