示範教學 --- led 亮度淡化
如何使用analogWrite()函數的關閉和打開褪色的 LED。
AnalogWrite使用脈寬調製 (PWM),轉向一種數位針和
關閉速度非常快,要創建淡化效果。
所需的硬體
Arduino 電路板
Breadboard
指示燈
一個 220 歐姆的電阻
電路
連接到數位輸出針 9 對您通過 220 歐姆的電阻器 Arduino
的陽極(更長時間的、 陽極的腿) 你的 LED。陰極(短、
負leg) 直接連接至地面。
代碼
宣告要你led Pin的 9 針之後, 不需動您的代碼的setup()函數。
您將使用在您的代碼的主迴圈中的analogWrite()函數需要兩個
參數:一個告訴該函數的 pin 以寫入和一個指示哪些PWM值來
寫。關閉和打開褪色你的 LED,以逐漸增加您 PWM 值從 0
(一路關閉) 到 255 (一路上),然後再為 0,再一次以完成
該週期。在下面的架構,PWM 值設置使用稱為brightness的變數。
每次執行迴圈時,它會增加由變數fadeAmount的值.
如果在兩個極端值 (0 或 255) 的brightness,則fadeAmount
將變更為其負。換句話說,如果fadeAmount是 5,則它是設置為-5
。如果它是 55 ,則它是設置為 5。在下一次執行迴圈時,此更改會
導致brightness更改以及方向。
analogWrite()可以更改 PWM 值得非常快,因此末尾的架構延遲
控制速度的淡入淡出。請嘗試更改延遲的值,並看到它是如何變化
的程式。
淡入淡出
此示例示範如何以 9 pin 上的指示燈
使用 analogWrite() 函數。
此代碼示例是在
int led= 9;/ / 指示燈所附加到的 pin
int brightness= 0;/ / 多亮 LED 是
int fadeAmount = 5;/ 多少點淡的 LED
/ / 安裝常式運行一旦當你按下重置:
void setup() {
// 聲明要輸出的 9 針:
pinMode(率領, 輸出);
}
// 迴圈常式永遠一次次地運行:
void loop() {
//設置的 pin 9 亮度:
analogWrite(led ,brightness);
// 更改為下一次迴圈的亮度:
brightness + fadeAmount;
// 反轉的兩端的淡入淡出方向:
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ;
}
// 等待 30 毫秒為單位),請參閱變暗效果
delay(30);
}