利用類比信號輸出,改變腳位電壓,從而改變LED亮度
數位埠上面標示"~"符號(或"PWM")的六個腳位(3,5,6,9,10,11),兼具類比信號輸出功能。
讀取施加到其中一個引腳的電壓(比如模擬感測器值連續變化)
此函式返回0到1023之間的數字,表示0到5伏特之間的電壓。例如,如果施加到編號0的引腳的電壓為2.5V,則analogRead(0)返回512
analogWrite ( pin , value ) ;
value :0 (always off) 至 255 (always on)
analogWrite()函式將模擬值(PWM波)寫入引腳。它可用於以不同的亮度點亮LED或以各種速度驅動電機。在呼叫analogWrite()函式之後,引腳將產生指定佔空比的穩定方波,直到下一次呼叫analogWrite()或在相同引腳上呼叫digitalRead()或digitalWrite()。
注意事項
ATmega168或ATmega328板上,在針腳3,5,6,9,10和11上工作;
大多數引腳上的PWM訊號頻率約為490 Hz。
int led=3; //將LED正極接在接腳3,宣告led變數為3
void setup() {
pinMode(led,OUTPUT);
}
void loop() {
int i=0;
for(i=0;i<255;i=i+5){
analogWrite(led,i) ;
delay(50);
}
analogWrite(led,0); //關閉LED
delay(1000);
}
一、修改程式碼,使LED亮度漸暗。
二;修改程式碼,使LED循序由暗至亮,再由亮至暗。