CdSは光の強さに応じて抵抗が変化するので
適当な抵抗との分圧をAD変換して値をとる。
配線は以下を参考にした。
http://www.geocities.jp/zattouka/GarageHouse/micon/Arduino/FirstMicon/main.htm
抵抗は10kΩを使った。コードを動かして必要な場合は調整する。
使用したCdS(1個40円)
http://akizukidenshi.com/catalog/g/gI-00110/
void setup() { pinMode(13,OUTPUT) ; // LED接続のピン(13番)をデジタル出力に設定 Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } } void loop() { int ans ; ans = analogRead(0) ; // CDS接続のアナログピン0番を読み取る Serial.println(ans); if (ans >= 700) { // 700がしきい値 // 光がしきい値より暗く(大きく)なったなら処理 digitalWrite(13, HIGH) ; // LEDを点灯(HIGH(5V))で出力 } else { // 光がしきい値より明るく(小さく)なったなら処理 digitalWrite(13, LOW) ; // LEDを消灯(LOW(0V))で出力 } delay(1000); }
電気を消した時に535、付けた時に893くらいだからしきい値は700で良さそう。