課程目標
相關知識
光的色散: 太陽光通過三菱鏡,被分解成彩色光帶的現象,是1666年由英國物理學家牛頓首先發現的。
**光的三原色:**七種色光中只有紅、綠、藍三種色光無法被分解,而其他四種顏色的光均可由這三種色光以不同比例相合而成。于是紅、綠、藍被稱為“三原色光”或“光的三原色”。后經證實:紅、綠、藍這三種顏色的組合,幾乎能形成所有的顏色。
光的組合:
紅+綠=黃;綠+藍=青;紅+藍=品紅;紅+綠+藍=白。
RGB彩燈:
有直插式和貼片式,從原理上可以理解為將三種顏色的LED組合到了一起。
根據其原理,分為共陽極和共陰極。
電路搭建
所需材料
Arduino UNO * 1
共陰極RGB彩燈 * 1
可調電位器 * 3
杜邦線若干
接線方式
普通的發光二極管(LED燈)只有兩個管腳,一個長腳一個短腳,其中長腳接電源正極,短腳接電源負極。
而四個管腳的這里面有三個LED燈珠,其中一個腳是三個LED燈的公共部分,另外三個腳就是對應每個LED燈的第二個管腳,這種RGB LED燈也有共陰極和共陽極之分,對于共陽極的RGB LED燈來說,四個管腳中最長的那個管腳為陽極,也就是接到電源的正極,參考圖片如下。
根據上面所描述的特性,電路接線如下:
程序編寫
課堂練習:紅綠燈
試著編寫一個由RGB燈制作的紅綠燈。要求實現紅燈亮10秒,綠燈亮10秒,黃燈閃爍3秒(閃爍間隔為500毫秒)。
圖形化方式:
程序功能實現上面,首先創建了四個函數,分別為亮紅燈、綠燈、黃燈和關閉。RGB彩燈可以通過改變輸入電壓來控制燈光顏色,也就是通過調整模擬輸入來實現不同顏色的燈光顯示。
這里的黃色的RGB值為255,255,0。同學們可以通過修改R和G的值來改變黃色的色度。
代碼方式:
/* 項目名稱:RGB紅綠燈
* 項目時間:2022.02.21
* 項目作者:MRX
*/
int led_R = 9;
int led_G = 10;
int led_B = 11;
void red(){
analogWrite(led_R,255);
analogWrite(led_G,0);
analogWrite(11,0);
}
void green(){
analogWrite(led_R,0);
analogWrite(led_G,255);
analogWrite(led_B,0);
}
void yellow() {
analogWrite(led_R,255);
analogWrite(led_G,255);
analogWrite(led_B,0);
}
void closed() {
analogWrite(led_R,0);
analogWrite(led_G,0);
analogWrite(led_B,0);
}
void setup() {
pinMode(led_R,OUTPUT);
pinMode(led_G,OUTPUT);
pinMode(led_B,OUTPUT);
}
void loop() {
red();
delay(7000);
green();
delay(7000);
for (int i = 0; i <= 2; i = i + (1)) {
yellow();
delay(500);
closed();
delay(500);
}
}
課后練習
使用三個可調電位器,實現可以調色的RGB彩燈。
-
led燈
+關注
關注
22文章
1592瀏覽量
107953 -
電位器
+關注
關注
14文章
1012瀏覽量
66767 -
發光二極管
+關注
關注
13文章
1198瀏覽量
66282 -
RGB
+關注
關注
4文章
798瀏覽量
58462 -
Arduino
+關注
關注
188文章
6469瀏覽量
186958
發布評論請先 登錄
相關推薦
評論