三種の液晶


手元にある液晶を整理してみました。

型番 T18SPI-2P SEL10016B GMF12064ASLY
表示 カラー モノ モノ
サイズ 128x160 100x32 128x64
コントローラー ST7735 WS0010 AVR自作
転送方法 SPI USB(FTDI BITBANG) シリアル
mrbgem mruby-bsdtft mruby-libftdi mruby-serialport
入手先 aitendo ストロベリーリナックス Hardoff
入手価格 250円 1260円 300円

すべてmruby-cairoに書いて、データを転送しています。

UTF8の日本語文字列を扱うためにMRB_UTF8_STRINGを定義してmrubyをビルドするようにしてみたところmruby-serialportでのデータ送信がうまくできなくなりました。調べてみたところバイトデータの8ビット目が立つとデータが化けてしまうようです。chrメソッドで1バイトの文字列にしていたのですが、仕様のようなので下記の方法で回避しました。

       bytestr = " "
       bytestr.setbyte(0, pat)
       sp.write bytestr

受信側も自分でプログラムしているので太古の7ビット送信という手も頭によぎりましたが、データが大きくなるのでやめました。

他の二つは自前のmrbgemsが配列でデータを受け取っているので、問題が起きませんでした。

ARMにも液晶つないでみました。
https://qiita.com/yamori813/items/8a721d8d5d7864088fb4

Linux方面にはLCD4Linuxというプロジェクトがあるようです。