aitendo C128X64SPI-12P-M with FRDM KL25Z

Dependencies:   mbed

/media/uploads/masato/c128x64spi-12p_2.jpg

aitendo の FSTN液晶モジュール(128x64/SPI)[C128X64SPI-12P-M] を KL25Z につないでみました。今のところ、ドット、ライン操作までしか用意できていません。コントローラ仕様によるとデバイスからデータを取得することができるのですが、シリアル(SPI)ではできないことになっているため、フレームバッファは自前で持っています。テスト用にドラゴン曲線を表示させてみました。

ところで aitendo の商品説明ページ中の FPCケーブル取り付け例の写真は誤っていました(修正された模様)。また、キャリーボードでの LCD とバックライトの GND と電源は直結されているようです。ついでにサンプルのコードでのフレームバッファの使い方にも誤りがありますからドット単位で操作する場合には注意が必要です。

2014.03.12
q61.org さんの Chibimo 表示器として使えるようにしてみました。ドラゴン曲線を描いた後、ホストからの Chibimo データを処理します。KL05 とトラ技 ARM ライタ基板でも動作を確認していますが、Chibimo として使うには USB シリアルの使える KL* が良いでしょう。

/media/uploads/masato/12876787564_6915e1f553_z.jpg

c128x64spi.h

Committer:
masato
Date:
2014-03-03
Revision:
2:f6b27ec62471
Parent:
1:84b2d36d57f0

File content as of revision 2:f6b27ec62471:

#ifndef C128X64SPI_H
#define C128X64SPI_H

#include "mbed.h"

class c128x64spi {
public:
  c128x64spi(PinName mosi, PinName miso, PinName sclk, PinName cs, PinName rs, PinName reset);
  void pixel(int x, int y, int sw = 1);
  void clr(int sw = 1);
  void hline(int x0, int x1, int y, int color = 1);
  void vline(int x, int y0, int y1, int color = 1);
  void line(int x0, int y0, int x1, int y1, int color = 1);
  void locate_x(int x);
  void locate_y(int y);
  

  void wr_cmd(int cmd);
  void wr_dat(int dat);

private: 
  unsigned char gfx_buf[8][128];
  int loc_x;
  int loc_y;
    
  SPI _spi;
  DigitalOut _cs;
  DigitalOut _rs;
  DigitalOut _reset;
};

#endif