利用光線傳感器控制呼吸燈

int brightness = 0;? ? //定義整數(shù)型變量brightness與其初始值,此變量用來表示LED的亮度

int fadeAmount = 5;? ? //定義整數(shù)型變量fadeAmount,此變量用來做亮度變化的增減量

int val = 0;

void setup()? {

Serial.begin(9600);// 設(shè)置串口波特率

pinMode(0, INPUT);// 設(shè)置3號模擬口為輸入端口

pinMode(6, OUTPUT);// 設(shè)置6號數(shù)字口為輸出端口

}

void loop()? {

val = analogRead(0);

Serial.print(val);

Serial.println();

if (val > 20) {

analogWrite(6, brightness);//把brightness的值寫入6號端口

brightness = brightness + fadeAmount;//改變brightness值,使亮度在下一次循環(huán)發(fā)生改變

if (brightness == 0 || brightness == 255) {

fadeAmount = -fadeAmount ; //在亮度最高與最低時進(jìn)行翻轉(zhuǎn)

}

delay(30); //延時30毫秒

}

else

{

digitalWrite(6, HIGH);? // turn the LED on (HIGH is the voltage level)

delay(100);? ? ? ? ? ? ? // wait for a second

digitalWrite(6, LOW);? ? // turn the LED off by making the voltage LOW

delay(100);? ? ? ? ? ? ? // wait for a second

}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容