Arduinoの覚書

自分の備忘録です。Arduino以外もあります。

★ Arduino 8.PCからLED調光


目的

PCのシリアルモニタに0~255を入力して、外付LEDをPWM調光させる。
数値の終わりはz(Enter)を入力する。
シリアルモニタは、スケッチの右上にあるボタンを押すと出てくる。
その上側の欄に入力する。下側に調光値を表示させる。

回路図

「外付LEDの点滅」と同じ

スケッチ

#define LED 10                         // LED=10(pin)
int pwm = 0;                            // pwm=0~255まで入力できる
void setup() {
  Serial.begin(9600);                 // シリアルモニタ通信速度設定
}                          // アナログ出力はピンモード出力設定が不要
void loop() {                         // ループ
  int i;                                   // 変数 整数
  if (i != -1){                         // 何か入力したら i > 0でも可
    i = Serial.read();             // シリアルモニタで入力した文字をi
    switch (i){                      // ケース分けする
      case '0'...'9':                // 数字3桁以下を入力したら
        pwm = pwm * 10 + (i - '0');   // 前の値を1桁上げて追加
                                        // iは文字コード分を減らす
                                       // '0'の文字コード=48
                                       // '1'の文字コード=49
        break;
      case 'z':                     // 「z」(Enter)で点灯
        Serial.println(pwm);            // シリアルモニタに表示
        analogWrite(LED, pwm);    // LEDをPWM調光
        pwm = 0;                           // pwm値リセット
        break;
        default:                            // 他の文字は無視
        break;
    }
  }
}

 
 
 
次へ