ミント缶Ⅳの画面デザイン
SPI制御OLEDのトラフィック
OLED表示の評判が思わしくないのでデザインの変更を検討します。試作で使った秋月のI2C版はDCCパケットが間欠してデコーダにリセットが掛かってしまいますので、量産試作はAliExpressで見つけたSPI版に変更しました。それでも16x8ドットの縦倍角フォントで4桁アドレスを更新すると約3msec間パケットが停止します。
画面を改善
SPI制御のトラフィックでこれ以上大きなフォントは使えませんので、画面の表示を工夫して多少なりとも見やすく出来ないか試します。ファンクションとアクセサリを頻繁に同時操作するケースはほゞ無い事を前提に、両者の表示を別画面にして表示量を減らしてみました。SEL+▲ボタン押しでルート表示とファンクション表示を切り替えます。
行間が広がって見やすくなったと思いますが如何でしょうか。ロコ関係はそのままで、ルート表示だけの書き替えですが約6msec間パケットが停止しますので、画面左右を半分ずつメインループの100msecインターバルで時分割表示しました。動体視力の良い人は気が付くかもしれません。
1回の表示は3msec以内に収まっています。
« 頒布試験募集を終了しました | トップページ | MMモードのテスト »
「コントローラ」カテゴリの記事
- wio terminalその4(2022.05.02)
- wio terminalその3(2022.04.22)
- wio terminalその2(2022.04.14)
- ALTOISサイズ缶(2022.04.03)
- Wio Terminal(2022.01.29)
SPIのOLEDの通信規約を把握していないので、あくまで一般論ですが・・・。
sendDataを書いているとき、毎回、CSとDCをセットされてますよね?
これを、もうちょっと最適化して、書き始めと、書き終わりだけにするだけでも、そこそこの時間短縮になると思います。
たとえば、digitalWriteは1回でコストが44サイクル(44*1/16MHz=2.75us)なので、3回で8.25us。たとえば、16文字描画(1行分)なら、16*8.25us=132usと、結構な量になってきます。
通信自体は8Mbpsで行っているので、CSなどのオーバーヘッドを減らすことで、本来の通信速度を出せると思います。細切れで送るのが、通信としては一番効率が悪いので・・・。
投稿: Yaasan | 2018年6月22日 (金) 23時02分