Lab6
Photocell 光敏電阻
[材料]
[材料]
Arduino主板 x 1
麵包板 x 1
Led x 2
電阻 10kΩ x 1
光敏電阻 x 1
步驟1:測試光敏電阻的電阻大小,改變環境亮度,看看LED燈的亮度變化如何?
步驟2:改變"輸入"數值;再"輸出"相對應的數值讓LED發出不同亮度。
/* Lab6 Photocell 程式碼 */
int lightsensorPin = A0;
int led1 = 11;
int switchingthreshold= 500; //要啟動的閾值
int wait = 1000; //啟動後,持續時間
long timer = 0; //現在時間,非整數、有小數位數
int lightValue; //現在亮度
void setup(){
Serial.begin(9600);
pinMode(led1, OUTPUT);
}
void loop(){
lightValue = analogRead(lightsensorPin);
Serial.println(lightValue);
if (lightValue < switchingthreshold){ //小於閾值時
digitalWrite(led1, HIGH);
timer = millis(); //timer=現在時間
}
else if ((lightValue >= switchingthreshold) && (millis() > timer + wait)){ //大於閾值時,並看有沒有超過timer+wait的時間
digitalWrite(led1, LOW);
}
delay(20);
}
[基本問題]
[基本問題]
1. 查詢光敏電阻對光線所偵測的數值。
2 millis()的功用是什麼?
3. 修改程式,根據環境變暗的程度,調整LED變亮的程度。