Arduino × 光センサ 結線図とスケッチ

LINEで送る
Pocket

 

Arduinoと光センサーを使って、周りが暗くなればLEDを明るくし、明るくなればLEDを暗くしてみました!

 

 

1.準備するもの


[table “Arduino_CdS” not found /]

 

2.結線図


 

 

3.スケッチ



const int CDS_PORT = A0; // CdSセンサー入力ポート
const int LED_PORT = 9; // LED出力ポート
const boolean SERIAL_OUTPUT = true; // 輝度のシリアル出力
const int LOOP_DELAY = 200; // ループ周期(ms)

void setup() {
  pinMode(LED_PORT, OUTPUT); // LEDポートを出力ポートにセット
  
  if(SERIAL_OUTPUT){
    Serial.begin(9600);
  }

}


void loop() {
  int brightness = analogRead(CDS_PORT); // センサーからのアナログデータを取得
  int luminance = map(brightness, 0, 1023, 255, 0);

  analogWrite(LED_PORT, luminance);

  if(SERIAL_OUTPUT){
    Serial.print(luminance);
    Serial.println("");
  }

  delay(LOOP_DELAY);
}

 

【ポイント】

int brightness = analogRead(CDS_PORT);

でアナログポートから光センサーのデータを取得します。

 

int luminance = map(brightness, 0, 1023, 255, 0);

で取得した0〜1023のデータをLED出力用の255〜0の数値にマッピングしています。

 

GitHubにもスケッチをアップロードしてありますので、よかったら使ってみてください(^_^)

 

 

LINEで送る
Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*