BlynkでPWM機能を使ったLEDの明るさ制御と音の出力ESP32のPWM機能を利用して、LEDの明るさを制御するとともに、ピエゾスピーカー(圧電サウンダー)の音を鳴らしてみましょう。使用するボードはESP32-DEVC-HOMEです。http://www.microfan.jp/esp32/esp32-devc-home現時点では、ESP32用のArduinoでは、analogWrite()やTone()関数がないため、LEDの明るさを調整しようと思ったり、ピエゾスピーカーで音を出そうと思っても、手軽な手段がなく途方に暮れてしまいますね。UNOだと、スマートフォンのBlynkアプリでSliderなどを使うと、PWMが使えるデジタルピンにはPWMという表記がついており、そのようなピンを選択することで、気軽にPWM(analogWrite())出力ができたのですが、現状のESP32ではPWM表記の付いたデジタルピンはありません。スケッチにTone()関数を記述してもコンパイルエラーになり、手軽に音を出すことができません。Driver機能を利用した例を示します。Driver機能で利用できるPWMを使って、LEDにかける電圧のデューティー比を変えるのと、ピエゾスピーカーに出力する信号の周波数を変えます。;}スケッチでは、LEDと音の変更用の3個のBLYNK_WRITE()を定義します。BLYNK_WRITE()の引数は通常V0,V1,...のようになっていますが、ここでは、GPIOのピン番号を指定しました。V0,V1,...はBlynkのヘッダーファイルの中で、V0は0,V1は1に定義されています。このため、今回のスケッチのように指定しても問題なく利用できます。この方が分かり易いですよね。スマートフォンのBlynkアプリでは、LEDの明るさや音の周波数を、連続的に変えられるようにSliderを使用します。以下にSliderに設定する仮想端子の割り当てを示します。RELEASE]をOFFにします。