努力したWiki

推敲の足りないメモ書き多数

ユーザ用ツール

サイト用ツール


documents:os:linux:debian:bbb-doc009

文書の過去の版を表示しています。


009.LCDを接続する…さようならBBB

2026-08-26 5V駆動のLCDでもなんとかなった

書きかけ

概要

  • メーカー不明のLCD、型名には1602A V2.0
  • 多分使えるとは思う
  • ただしこいつは5V駆動。単純にBBBへ接続できないかも

外観

ジャンク箱に放置されていたLCDをBBBにつないでみる。
1602というよく知られたパーツで、コントローラHD44780かその互換品で構成されている。
ただ一般的には5V駆動のパーツなのでBBBの3.3Vとは相性の問題があるかもしれない。

I2CのI/Fを搭載していないパーツなのでパラレル接続を実施する事になる。

20260825-222342.jpeg

20260825-222006.jpeg

仕様等々

大変メジャーなパーツ。以下のリンクは型番が少し違うけどまぁ似たようなもん。

秋月電子通商 LCDキャラクターディスプレイモジュール(16×2行バックライト付)

キーワード「 LCD 1602A 」でWeb検索すると接続に関する記事がいろいろ見つかるけど、ほぼラズパイかArduinoの記事で、これらは本体のPINへ直結できる模様。
事前にChatGPTさんに聞いてみると、5V稼働のパーツで信号線出力も5VだからそのままBBBのGPIOにつなぐとお釈迦になるよ、と警告を受ける。

提案としては1602Aを書き込みモードに固定してつかうなら、3.3Vでも行けると思うので試してみれば?との事。

配線

検索で出てきた記事を参考に配線図を書き出す。実際に配線してみたところ動いている。よかった。液晶のコントラスト変更は可変抵抗VRの調整で行う。

20260825-221151.jpeg

ソフトウエア

ChatGPTによれば先の表示は初期化が行われていない1602の表示の典型例だそうで、初期化コマンドを送って初期化する必要がある。

ただ、困った事にコマンドの送信タイミングなんかをやり取りする事(例えばBusyかどうかの確認)ができない。それは読み出しになり 1602A がその信号を返す時は 5V で信号を出すから。

インストラクション

この資料によると、R/WのPINがHigh(1)の時のコマンドは2つ。

  • Busy Flag/Address Read
  • CGRAM/DDRAM Data Read

Busy Flagを見て(D7の状態を見て)コマンドの発行タイミングを計れそうだと思ったのだけど、強制でR/WはLowにしているので(GND接続しているので)この2つは使えない。

さようならBBB

BBB、電源が入らなくなった……

多分5VがBBBのどこかのPINに入ってしまったんだと思う。

documents/os/linux/debian/bbb-doc009.1787729672.txt.gz · 最終更新: by k896951

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki