電路接線圖

常數定義
#define 名稱 數值 // 沒有分號,沒有等號
#define R 21 // R 接腳
#define G 22 // G 接腳
#define B 23 // B 接腳
顏色控制
// 紅色
analogWrite(R, 255);
analogWrite(G, 0);
analogWrite(B, 0);
// 綠色
analogWrite(R, 0);
analogWrite(G, 255);
analogWrite(B, 0);
// 藍色
analogWrite(R, 0);
analogWrite(G, 0);
analogWrite(B, 255);
// 白色
analogWrite(R, 255);
analogWrite(G, 255);
analogWrite(B, 255);
// 黑色
analogWrite(R, 0);
analogWrite(G, 0);
analogWrite(B, 0);
// 任意顏色(由 r, g, b 這3個參數自由組合)
analogWrite(R, r); // r: 0 ~ 255
analogWrite(G, g); // g: 0 ~ 255
analogWrite(B, b); // b: 0 ~ 255
隨機函式
random(max); // 隨機傳回 0 ~ max-1 之間的整數
random(min, max); // 隨機傳回 min ~ max-1 之間的整數
r=random(256); // 隨機產生0~255的整數,儲存到 r
g=random(256); // 隨機產生0~255的整數,儲存到 g
b=random(256); // 隨機產生0~255的整數,儲存到 b
參考範例
#define R 21 // R 接腳
#define G 22 // G 接腳
#define B 23 // B 接腳
int r; // 儲存紅色成分的參數r
int g; // 儲存綠色成分的參數g
int b; // 儲存藍色成分的參數b
void setup() {
pinMode(R, OUTPUT); // 宣告R為輸出腳
pinMode(G, OUTPUT); // 宣告G為輸出腳
pinMode(B, OUTPUT); // 宣告B為輸出腳
Serial.begin(9600); // 啟用串列埠監看視窗
// 紅色
analogWrite(R, 255);
analogWrite(G, 0);
analogWrite(B, 0);
Serial.println("Red");
delay(1000);
// 綠色
analogWrite(R, 0);
analogWrite(G, 255);
analogWrite(B, 0);
Serial.println("Green");
delay(1000);
// 藍色
analogWrite(R, 0);
analogWrite(G, 0);
analogWrite(B, 255);
Serial.println("Blue");
delay(1000);
// 白色
analogWrite(R, 255);
analogWrite(G, 255);
analogWrite(B, 255);
Serial.println("White");
delay(1000);
// 黑色
analogWrite(R, 0);
analogWrite(G, 0);
analogWrite(B, 0);
Serial.println("Black");
delay(2000);
}
void loop() {
// 任意顏色(由 r, g, b 這3個參數自由組合)
r = random(256); // 隨機產生0~255的整數,儲存到 r
g = random(256); // 隨機產生0~255的整數,儲存到 g
b = random(256); // 隨機產生0~255的整數,儲存到 b
// 任意顏色(由 r, g, b 這3個參數自由組合)
analogWrite(R, r); // r: 0 ~ 255
analogWrite(G, g); // g: 0 ~ 255
analogWrite(B, b); // b: 0 ~ 255
Serial.print("Random........");
Serial.print("r=");
Serial.print(r);
Serial.print(" ,g=");
Serial.print(g);
Serial.print(" ,b=");
Serial.println(b);
delay(1000);
}
作業練習:
- 開機後,依序顯示紅、綠、藍、白、黑5種顏色一次。
- 循環顯示下列狀態:
- 紅色呼吸1次(2~3秒)
- 綠色2秒
- 藍色呼吸1次(2~3秒)
- 白色2秒
- 隨機顏色2秒
- 黑色2秒
- 隨機顏色2秒
- 各顏色的狀態必須顯示在監看視窗上。
- 在Wokwi網站上進行模擬,並完成實體接線。