0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ESPr Developer 32 Type-Cで遊ぶ

Last updated at Posted at 2023-11-08

「ESPr Developer 32」は、スイッチサイエンス社が出しているESP32の評価基板。
2200円ととても安い。子育て中の私のおこづかいでも買える。

ESP32は組み込み系のブログを見るといたるところで使われているのと遊べそうなので買ってみた。

ブレッドボードって案外高いな…。

ピンヘッダが付いていないものを買ってしまったので、まずはちまちまとはんだ付けする。
F-SG3EWawAAXVqg.jpg

定番のボタン入力、LED点灯、ブザー鳴動を作った。
ブレッドボードやLEDやらは昔買って結局使ってなかったもの。

環境はArudino IDE。ボードは「ESP32 Dev Module」でOK。

スケッチ。button_led_buzzer.ino

button_led_buzzer.cpp
const int DIN_PIN = 13;                // ボタン入力のピン番号
const int LED_PIN = 25;                // LED出力のピン番号
const int BUZZER_CHANEL = 0;           // ブザーのチャネル番号
const int BUZZER_PIN = 2;              // ブザーのピン番号

const int BEAT = 300;                  // 音の長さ(0.3秒間隔)

// 初期設定
void setup() {
  // ピン設定
  pinMode( DIN_PIN, INPUT_PULLUP );
  pinMode( LED_PIN, OUTPUT );
  // PWM設定(チャンネル(0~15),PWM周波数(~40MHz),ビット数(1~16))
  ledcSetup(BUZZER_CHANEL, 12000, 8);
  ledcAttachPin(BUZZER_PIN, BUZZER_CHANEL);
}

// メインループ
void loop()
{
/*
  const int TONENUM = 16;
  int onkai_tbl[TONENUM] = {
  // ド レ  ミ ファ  ソ  ラ シ
    262, 294, 330, 349, 392, 440, 494, 
    523, 587, 659, 698, 784, 880, 988,
    1049, 0
  };
*/
  const int TONENUM = 16;
  int onkai_tbl[TONENUM] = {
    262, 262, 392, 392, 440, 440, 392, 0,
    349, 349, 330, 330, 294, 294, 262, 0
  };

  int value = 0;

  value = digitalRead( DIN_PIN );

  if ( value == LOW ){
    // ボタンON
    digitalWrite( LED_PIN, LOW );  // LED消灯

   // 音階テーブルを実行
   for (int i=0; i < TONENUM; i++){
      if (0 != onkai_tbl[i]){ // 0は消音しないでキープ
        ledcWriteTone(BUZZER_CHANEL, onkai_tbl[i]);
      }
      delay(BEAT) ;
    }
  }
  else
  {
    // ボタンOFFはLED点灯しブザー消音
    digitalWrite( LED_PIN, HIGH );
    ledcWriteTone(BUZZER_CHANEL, 0);
  }
  delay( 100 );
}

参考
・LED配線
https://electwork.net/esp32-1/

・ボタン配線、入力
https://deviceplus.jp/arduino/arduino_f06/

・ブザー
https://www.e-tecinc.co.jp/blog/2021/04/23/esp32_buzzerpwm/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?