Pi Pico (W)で有機ELディスプレイに日本語表示(メモ)


Pico の環境設定は以下を参考

Pi PicoにMicroPythonをセットアップして実行してみる(メモ)

 


Arduino IDE を使う場合は

Pi Pico (W) に有機EL (OLED) ディスプレイ:Arduino IDE

 


Pico (W) のディスプレイとしてこれを使ってみます。

0.96インチ 128×64ドット 有機ELディスプレイ(OLED)白色

秋月電子で1個580円、Amazonなら互換品が2個で1000円弱くらいです。

 

 

 

 

 

 

 

 

 

 

ジャンパー線(メスーメス)4本でPico と接続します。

 

 

 

 

 

Pico のGPIO はこんな具合です。

 

 

 

 

 

 

 

 

 

 

 

このディスプレイは3.3Vで駆動します。

黒のジャンパー線は例えば#38のGND、赤のジャンパー線は#36の3V3(OUT)か#40のVBUS(5V)に接続します。電源電圧はどちらでもいけます。

後2本の信号線は、例えばGP0(SDA)、GP1(SCL)に接続するとこんな感じです。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SDA、SCLがアサインされていれば、GP16(SDA)、GP17(SCL)でもいいです。

このGP番号は後のコードの中で使います。

 


ライブラリをインストール

MicroPython用のOLEDディスプレイ用ライブラリを使います。

Thonny を起動

 

 

 

 

 

 

 

 

 

 

 

ssd1306を入力して検索。

結果から「micropython-ssd1306」をクリックしてインストール実行。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


ASCII 文字表示

例として、Pico に標準で搭載されている温度センサーから取得した値を3秒間隔で時刻とともに表示してみます。

時刻はPC 接続時に正しく取得されます。Pico単体の場合はRTC(Real Time Clock)モジュールが別途用意するかNTP同期ルーチンが必要になります。

 

 

 

 

 

 

 

 

 

 

 


日本語表示のためのフォントをインストール

DOSの時代の漢字は16×16や12×12ドットのサイズが使えましたが、さすがに1インチ以下の画面に漢字を表示するにはこのサイズは使えないということで美咲(みさき)フォントというものを使います。

かつてPalmやそのクローンOSなどを日本語化する際に使われていた恵梨沙(えりさ)フォント(8ドットx8ドット)を見やすくするため更に右側下側それぞれ1ドットを空白にしたフォントだそうです。Pico のフラッシュメモリーに載せられるように語数も制限しているそうです。

 

 

 

 

 

 

このサイズだとさすがに漢字だと潰れるところはありますが「そんな字でも、そう思ってみれば、そう見える」ところが素晴らしいです。

それはさておき、美咲フォントはココからダウンロードして解凍後、Cドライブなどにmisakifontフォルダーだけをコピーしておきます。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Thonny 起動後、メニュの表示ー>ファイル(Files)でフォルダーのツリーを表示しておきます。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

misakifontフォルダーをコピーしたディレクトリーで、右クリックして、「/をアップロード」を選択。このメニュは原文は”Upload to /” なので「/へアップロード」が正しく、これなら文意が通じます。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

これでmisakifontフォルダーがPico のフラッシュメモリのルートへコピーされます。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

こんな感じです。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


日本語を表示してみる

こんな感じです。「如何」の如の字が美咲フォントでは未対応なのでで代替されています。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

見辛い場合はfsizeで調整します。2倍にしてみました。

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*