LED_PWM
ESP32
概要
Arduino core for the ESP32を使った、ESP-WROOM-32開発ボードのLED_PWMの実験です。LEDの明るさを制御します。
Arduino core for the ESP32には、analogWrite()に加え、PWMを行うための、ledcXXX()という関数群が用意されています。これらの関数群の使い方を調べて、LEDの明るさを制御する実験を行いました。
あくまで、実験ベースなので、間違いが含まれている可能性が高いので注意してください
Arduino core for the ESP32のインストールのページはこちら。
実験
ESP32には、LED_PWMという、主にLEDの明るさを制御するためのPWMが実装されています。もちろん、LEDの明るさ以外の用途にも利用可能です。
利用できるピン
ESP32は、16個のLED PMW出力チャネルを持っています。出力チャネルを、GPIOピンに割り当てることで、LED PWMを出力することができます。ただし、GPIO34から39のピンは、入力専用のピンなので、LED PWMを出力はできません。
お詫び: 以前は、アナログ入力と混同した書き方をしていて、変なことを書いていました。
LED_PWMの使い方
以下のAPIを呼び出すことにより、利用することができます。
- ledcSetup(): LED_PWM出力チャネルを設定する
- ledcAttachPin(): LED_PWM出力チャネルをGPIOに割り当てる
- ledcWrite(): LED_PWMを出力する
ledcAttachPin()とledcSetup()を呼び出す順序はおそらく関係ありません。
他にも、以下のAPIが用意されています。
スケッチ例
12番ピンにLEDを接続して、暗→明→暗→明→…を繰り返します。
|
|
参考文献
バージョン
Hardware: | ESP-WROOM-32 |
Software: | Arduino IDE 1.8.16/Arduino core for the ESP32 v2.0.1 |
最終更新日
July 14, 2024