2013年5月4日 星期六

Arduino範例05:利用光敏電阻調整LED

這次要學習如何使用analogWrite()來取得外部類比輸入電壓, 
並且使用Serial.begin()和serial.println()直接在電腦看輸入電壓大小。

操作目的:
利用光敏電阻檢測外界光線的強弱,當外界光線不足時,要求LED燈亮起。

Video


接線

Code

Serial.println
這個指令可以在我們run下去之後,按右上角的Serial Monitor,出現analogWrite所擷取到的紀錄。可以注意到紀錄頁面的下方有顯示Serial.begin的速度 9600。


2 則留言:

  1. 請問,我用nano板,輸入接a6腳,為什麼LED沒反應?

    回覆刪除
  2. 想請問大大
    我想用一組光遮開關去控制
    A LED 會根據光遮動作...B LED 希望是觸發點亮後10秒就熄滅
    目前我是這樣寫..但是B LED 觸發Ttimer 一次後..就不會復原(歸零)
    請問要怎麼寫才可以呢? 謝謝

    #include "Timer.h"
    Timer t;
    int photocellPin = 2;  //定义变量photocellsh=2,为电压读取端口。
    int ledPin = 12;      
    int pin = 11;
    int val = 0;           //定义val变量的起始值
    void setup() {
    pinMode(ledPin, OUTPUT);
    pinMode(pin, OUTPUT);
    t.pulse(pin, 1000, LOW);
      }
    void loop() {
      val = analogRead(photocellPin);     //从传感器读取值
      if(val<=512){          //512=2.5V
      digitalWrite(ledPin, HIGH);           //当val小于512(2.5V)的时候,led亮。
      digitalWrite(pin, LOW);
    }
    else{
      t.update();
    digitalWrite(ledPin, LOW);
    }
    }

    回覆刪除