5-1.フラッシュメモリの特徴
前にも述べましたが、LCDC評価ボードに実装されている16Mbit(2MB)のSPI接続シリアルフラッシュメモリを画像メモリとして利用します。このシリアルフラッシュはLCDコントローラとは独立していて、自由に使うことができます。
このシリアルフラッシュはMicron製のM25P16というもので、SPIモード0またはモード3でアクセスできます。クロック周波数が最大75MHzという高速アクセスが可能ですが、消去機能は全ビット消去(Bulk Erase)か64KB単位消去(Sector Erase)しかありません。
5-2.シリアルフラッシュのアクセス
下記にSPI通信プログラムを使った、シリアルフラッシュのアクセスプログラム例を示します。
シリアルフラッシュに限らず、一般にフラッシュメモリはRAMやEEPROMと違って、あらかじめイレース(消去)しておかないと正常に書き込むことができません。また、プログラム例では書き込んだ後にベリファイチェックしていませんが、重要なデータを書き込む場合はチェックする必要があります。
シリアルフラッシュの基本的な注意点として、一度の読み込みまたは書き込みは、1ページ(256バイト)以内に制限されます。しかも、ページをまたぐ領域の読み込みまたは書き込みはできません。
・SPI通信プログラムのサンプル
・シリアルフラッシュアクセスプログラムのサンプル
注意:このプログラム例は参考のため省略している点があり、このままコンパイルできない場合があります。
このプログラム例では、まず最初に一度関数Prepare_sFlashを呼んで初期化を行う必要があります。なお、この関数の中で、SPIを初期化する関数Init_SPI0を呼んでいます。
5-3.消去・書き込み回数の平準化は省略
シリアルフラッシュの消去・書き込み回数には限度があり、消去・書き込みを繰り返すといずれ書き込みができなくなってきます。ちなみに、M25P16では消去回数は10万回以上、データ保持時間は20年以上といっています。
頻繁に書き込みを行う用途なら、寿命を延ばすため消去・書き込みの平準化処理(ウェアレべリングという)を行う必要があるのですが、このLCDユニットでは頻繁な書き込みもないので、何も行っていません。
6.LCDC評価ボードの配線
次の写真は、LCDC評価ボードの配線状態です。
LCDC評価ボードは、メイン基板のピンソケットに裏返しで実装するので、ピンヘッダは部品面に取り付けます。
7.メイン基板の製作
次の写真は製作したメイン基板です。ユニバーサル基板を使って製作しています。マイコンボードは、秋月電子通商のRX621マイコンボードです。
マイコンボードとSRAM基板の上にLCDC評価ボードを実装する構造なので、これらの基板の実装にはソケットを使わず、短いピンヘッダで直接はんだ付けして高さを抑えています。
この上に取り付けるLCDC評価ボードのFPCコネクタに、LCDパネルのフレキシブル基板を素直に入れるため、LCDC評価ボード用コネクタの位置はとても重要です。