a24a24a24のブログ -14ページ目

a24a24a24のブログ

アメピグ残党。
釣り、温泉、お出かけ、パソコン。最近、電子工作。

ラズパイPicoで、

SSD1306 OLEDにデジタル数字を表示するプログラム、その後。

 

 

 

 

 

 

データと表示制御の全部込みで35行に収まりました。(Wire.hのみ使用)

あまりにも変な書き方は避けたので、これくらいが限界かな。

 

 

表示できる文字を増やしました。

0~9、A~G、小文字のc、横棒の上中下(棒グラフ用)、四角の上下など。

小数点「.」や時計の真ん中の「:」は見送りました。数行追加すれば実装できそう。

 

 

一画面に全て収まるので、ピン番号やI2Cアドレスなど設定値の見通しが良いです。

余計な処理をしていないため、表示速度は非常に速いと思います。

表示データが使っているメモリは130byteくらいで軽々です。

 

 

 

 

私は書くプログラムが綺麗ではないのでコードを載せるのに抵抗がありますが、

過去にAdafruitなどのOLEDライブラリで四苦八苦した思い出があり

OLEDの動作確認程度の需要がありそうならば、どこかに公開しようかなと思います。

 

おしまい。

 

 

 

 

 

 

 

昨日なんとなく描いてみたデジタル数字。

 

 

 

 

 

 

帰宅後、久々にプログラムしてみたら

あっけなく表示できました。

Arduino IDE、ラズパイPico+SSD1306 OLEDの組合せ。

文字も大きめで見やすいかな。

 

Adafruitなどの表示ライブラリやフォントは使用せず

wire.hのみ使って、I2Cのデータを直接投げています。

プログラムはかなり短いです。データ込みで50~60行くらい?

 

下記の感じで変数に文字列を入れると、8文字x2行でデジタル表示するようにしました。

uint8_t str[17]="24-09-122358 26@";

 

 

 

 

Lチカ並みの手軽さで動くので、I2CやOLEDの動作確認に使えるかもしれません。

おしまい。

 

 

 

 

 

相変わらず、暑くてやる気が出ません。

9月なのに36度!?馬鹿じゃないの?仕事も地味に増加中、もう疲弊し切っています。

 

 

 

 

 

 

自分が暑さで腐ってしまいそうなので、何でもいいから手を付けてみようと

デジタル数字のドット打ちをしてみました。

16x32、一番シンプルな感じの文字です。

 

 

マイコンボードでよく使われる「SSD1306」OLED表示器という部品がありまして、

自前のプログラムで数字を直接表示する、というのをやってみようか考えています。

他のライブラリは使わず、I2CのWire.hだけで動くような。手軽にコピペレベルで使えるもの。

 

なので上の文字はSSD1306の仕様に合わせて、

一部分が縦8ドットの境界を極力跨がないように作っています。

こういうのをダラダラ考えるのは、楽しいな。

 

 

 

今日は、ここまで。

おしまい。