[ESP32]IoTマイコンを動かしてみる6 -LCD制御したかった編‐

開発環境も整い、無事Lチカにも成功した私。

未だ新しいPCが決められず、動作がもっさりしているサブPCで開発を進めざるを得ない状況だが、Fritzingの準備をしつつ、LCDの制御に取り掛かる。

その結果は果たして!?

(Arduinoをいじっていた頃を思い出すリハビリ回なので今回も内容うすめ)

嫌な予感…


ESP32のFritzingパーツ追加

そろそろ接続図も残していきたいのでFritzing使います。

ESP32のパーツデータは下記からいただきました。

以前XBeeのパーツを作ろうとして、凝りだすとめんどくさくて挫折したのを思い出した。ここは先人の力を借りよう。

インポートの方法が最初よくわからなかったが、右側のパーツペインのメニューからインポートできた。(①)

Save bin(②)しておかないと次回起動時に使えなさそう。

LCDを制御してみよう

手持ちのLCDが5V駆動の件

Arduinoのエントリーキットみたいなやつに入っていたLCD。当時のメモによるとSD1602 VBWB-XAという16×2のキャラクタディスプレイ。↓これですね。

電子部品,通販,販売,半導体,IC,マイコン,電子工作超小型LCDキャラクタディスプレイモジュール(16×2行 白抜き)秋月電子通商 電子部品通信販売

当初はArduinoで遊んでたときのパーツ類がそのまま使えるんじゃね、という想定で進めていましたが、ESP32は3.3V駆動でしたね。。

これは3.3V用のパーツを入手せねばいかんな、と思いつつ色々調べているとESP32-DevKitCには5Vのピンがあることを発見。これが使えるのでは。

駆動電圧は確保できるとして問題は信号のHiLowは3.3Vロジックのままなこと。

ここで↑の秋月のページからLCDのスペックを確認。

H LevelのMin.が2.2Vだから、なんとかいけたりしないものか。試してみよう。

LCD制御の回路とか

壊れたPCからなんとか救い出したArduinoでのLCD制御回路を参考に組んでみる。

完成したものがこちらでーす。

初歩の初歩すぎて「Arduino LCD」とかで検索すればいくらでも情報あるので詳細は省く。

相違点としては、LCDの右端の2つのピン、バックライトの入力電圧。

データシートを参照すると3.2V(Max. 3.4V)入力なので5Vロジックの場合100Ωとかの抵抗で降圧させるところをESP32の3.3Vを入力しているところ。

あとは実際に接続してArduinoのLCDサンプルスケッチを持ってくればOK。

まとめ

5V駆動のLCDをESP32で動かすための作戦を練ってみた。

いざ回路を組もうとしたら5Vが取り出せない状態でブレッドボードにESP32が差さっていたのでいざ引き抜くと…

いつかやると思ってた

ぐんにゃり足を曲げてしまった。ので今日はここまで。

(なんとかペンチで戻した)

今回の検討はおそらく正攻法ではないので動かないかもしれない。

どうせI2C試したいと思っていたのでI2Cで3.3V駆動のLCDも並行して探してみる。

それでは。おやすみなさい。

余談

壊れたPCからデータを救うため、それからSSD以外は無事なようなので再利用するため、USB起動のLinuxを準備してた。

Kali Linuxがペネトレーションテスト用のディストリビューションてことで面白そうなので入れてみた。

USBさしっぱで運用するので小さいUSBメモリを探そう→小さいmicroSDカードリーダーだったら余ってるmicroSDカードも再利用できるし一石二鳥→手持ちのmicroSDは容量厳しめ…→結局容量大き目のmicroSDカード買う→先日の悲劇

という顛末でした。

色々苦労もしたけれど無事動作しましたとさ。

かっくいい!