JH7UBCブログ

アマチュア無線 電子工作 家庭菜園など趣味のブログです

Raspberry Pi Pico MicroPython アナログ入力(ADC)テスト

2021-11-10 08:01:54 | Raspberry Pi Pico
 Raspberry Pi Picoのアナログ入力(ADC)のテストをします。
 Picoは、ADC(アナログデジタルコンバータ)を5個持っています。
 ただし、ユーザーが使えるのは、3個です。
 各チャンネルの使用目的とピン割り当ては、以下のとおりです。

 ADC(0) ユーザー GP26 31番ピン
 ADC(1) ユーザー GP27 32番ピン
 ADC(2) ユーザー GP28 34番ピン
 ADC(3) Vsys電源電圧
 ADC(4) 内蔵温度計

 PicoのADCの解像度は12ビットで0~3.3Vを0~4095に変換します。データは、16ビット(0~65535)で格納されます。

 まず、ADC(0)を使って、読み込んだ電圧を測定してみましょう。
 回路図です。10kΩのボリュームに3.3Vを加え、電圧を変化させて、ADC(0) GP26(31番ピン)に入力します。


 MicroPythonのスクリプトです。
 4行目 GP26を入力に設定します。(この行を記入しなくても動作しました。)
 5行目 使うADCを指定します。
 6行目 AD変換された値をVに変換する係数です。
 9行目 ADC(0)の値を読み込み、V(ボルト)に変換します。
 10行目 Shellにその値を表示します。{:.2f}で、小数点以下2桁まで表示します。

 1.74~1.76Vが測定されました。最終桁は少し動きます。
 実際の電圧をデジタル電圧計で測定してみました。


 0.1V以内の誤差で測定できるようです。

 次に、CPU(コア)の温度を内蔵のセンサーで測定してみます。
 スクリプトです。
 5行目 センサーが接続されているADC(4)を指定します。
 9行目 温度に変換する式です。
 10行目 小数点以下1桁まで表示します。


 室温は、20℃程度でしたので、やや低めに測定されました。
 Shellには、漢字も表示できるんですね。

 Web上にRaspberry Pi Picoの情報はまだ多くはありません。そこで、Interface 8月号を購入しました。「ラズパイのマイコン Pico 攻略本」です。

 さすがに、詳しく書いてあり、参考になります。MIcroPythonについては、巻末の方に特集が掲載されています。

最新の画像もっと見る

コメントを投稿