carcon999のブログ

12年間Y!ブログの記載を移行しました。電子工作関連の記事が多いです。

ソフトだね。

ハードウェアが完成したら、後はソフトウェアです。
実は、V850で液晶表示ができるのか、1つ不安があります。
データシートでは、液晶ディスプレイにデータを送信するためのクロックが7.83MHz~9.26MHzとの指定があります。V850(CQ出版の)は、20MHzです。

①クロックをHIにする。(1クロック)
②Rの8bitを出力ポートに設定する。(1クロック)
③Gの8bitを出力ポートに設定する。(1クロック)
④Bの下位4bitを出力ポートに設定する。(1クロック)
⑤Bの上位4bitを出力ポートに設定する。(1クロック)
⑥クロックをLOWにする。(1クロック)
⑦ループ処理の比較、インクリメント(3クロック?)
※この辺の値は、推測した値なので目安です。
※RAMの読み出しは、パイプラインで相殺されると推測しています。(本当?)
※上記は、あくまで私の回路の場合です。ポートの割り当てを変更していれば、4bitで分割する必要もありませんし、16bitのポートに割り当てればもう少し早くすることができるでしょう。

合計すると10クロック程度(9クロックですが、計算しやすいように。)
つまり、2MHzの送信クロックということになります。データシートでは、低速のクロックでは、フリッカーノイズ等が発生する可能性があるようなことが書かれています。まあ、「表示されない。表示できない。」とは記述されてないので、表示できるだろうと思いました。
更に気になるのは、クロックのDutyが、40%~60%に規定されています。そんな綺麗なクロックは出せないのですが・・・(そんなの関係ね~)

まだ、問題があります。表示するデータサイズです。
V850のRAMは、24Kバイト、フラッシュは、256Kバイトです。
液晶のサイズは、480×272で、130560ピクセルになります。
そして、1ピクセルは、RGB各8bitの24bit=3バイトで表現しますので、ディスプレイの全領域に画像を表示しようとすると、130560*3=391680=382.5Kバイトのデータになります。
つまり、全データを標準のFLASHにもRAMにも保持することができません。

それが先の回路図で、アドレスバス(19bit)とデータバス(8bit)をあけていた理由です。
実は、そこに画像データ格納用のFlashを追加しようと考えています。ただし、アクセス速度の問題もあるので、本当に実装するかは、迷っています。やるとすると、DMAで、RAMに転送しながら、液晶に転送するようになるでしょう。

結論としては、以下です。
■クロック2MHz  → 2MHzで表示できるかそのまま試す。
■クロックのDuty → 無視
■画像のデータ  → まずは、表現できるサイズで試みる。(その後、増設するかも・・・)