2014/2/3 KS-LTWV-CI デモ ソフトウェア関数マニュアル 初版 1/25 2014/2/3 ● 目次 ● 1. デモソフトウェアの概要 ・・・ P.3 2. ソースファイルについて ・・・ P.8 3. 関数について ・・・ P.9 2/25 2014/2/3 1.デモソフトウェアの概要 1-1 デモソフトウェアについて このデモソフトウェアは、 弊社のカメラ IF 付き LCD コントローラ KS-LTWV-CI の評価用ボード(KS-LTWV-CI EVALUATION BOARD と CPU-361L(CPU 周 辺回路のみ))用に作成したデモソフトウェアです。 本マニュアルでは、デモソフトウェアで使用している関数について述べており、ソ フトウェア設計の際のご参考として役立てください。 1-2 デモソフトの開発環境 このデモソフトウェアは、ルネサス製コンパイラ HEW で開発しています。 1-3 デモソフトウェアの動作について カメラ IF 付き LCD コントローラ KS-LTWV-CI 評価用ボード(KS-LTWV-CI EVALUATION BOARD と CPU-361L(CPU 周辺回路のみ))は、このデモソフ トウェアが書き込まれた状態で、出荷しています。 この評価ボードを立ち上げると、図 1-1 のデモメニュー画面が表示されます。 図 1-1 デモメニュー画面 以下に、各デモの内容について、説明致します。 3/25 2014/2/3 1-3-1 カメラデモンストレーション 1 デモメニュー画面の[カメラデモンストレーション 1]を押すと、図 1-2 の 画面に切り替わります。 この画面では、カメラ表示機能について、簡単に御確認頂けます。 以下に、機能について説明致します。 [QVGA] ・・・ このボタンを押すと、QVGA(320×240)サイズのカ メラ画像が表示されます。 [CIF] ・・・ このボタンを押すと、CIF(352×288)サイズのカメ ラ画像が表示されます。 [MOVE] ・・・ このボタンを押すと、カメラ画像が液晶の端にそっ て、1周 移動します。 [画面反転設定] ・・・ この文字を押すと、カメラ画像の表示方向が切 り替わります。 [ナイトモード] ・・・ この文字を押して ON 状態にすると、ナイトモ ードが有効になり、暗い部屋でも明るく表示され ます。 [ネガポジ反転] ・・・ この文字を押して NEGA 状態にすると、ネガ ポジ反転して表示します。 [EXIT] ・・・ デモメニュー画面に戻ります。 4/25 2014/2/3 図 1-2 1-3-2 写真撮影機能 デモメニュー画面の[写真撮影]を押すと、図 1-3 の画面に切り替わります。 この画面では、写真撮影を行うことが出来ます。 以下に、機能について説明致します。 [消去] ・・・ このボタンを押すと、フラッシュメモリの消去を行いま す。消去の間、カメラ画像の表示が消えて、フラッシュ メモリの消去の進捗が表示されます。 [撮影] ・・・ このボタンを押すと、液晶に表示されているカメラ画像 (図 1-3 の左側の画像)を、フラッシュメモリに書き込 み保存します。 [閲覧] ・・・ このボタンを押すと、フラッシュメモリに保存されてい る画像データを表示します(図 1-3 の右側の画像) 。 再度、このボタンを押すと、表示が消えます。 [<] ・・・ 現在、表示されているデータの 1 つ前のデータを表示し ます。 5/25 2014/2/3 [>] ・・・ 現在、表示されているデータの 1 つ後のデータを表示し ます。 [出力] ・・・ 現在、閲覧で表示されている画像データを、マイクロ SD カードに出力します。 注)出力を行う場合、CPU-361L(CPU 周辺回路のみ) のマイクロ SD カード用コネクタに、マイクロ SD カー ド(容量 2G バイト以下)を挿入してください。 [EXIT] ・・・ デモメニュー画面に戻ります。 図 1-3 6/25 2014/2/3 1-3-3 カメラデモンストレーション 2 デモメニュー画面の[カメラデモンストレーション 2]を押すと、カメラ画像 を表示中、以下の描画機能を実行します。 ① Tiny アクセラレータ機能による直線、矩形塗りつぶし描画 ② 画像データ転送機能による画像描画 ③ フレームバッファメモリのライト、リードによる反転描画 ③の動作が完了後、自動的にデモメニュー画面に戻ります。 1-3-4 デモンストレーション 3 デモメニュー画面の[デモンストレーション 3]を押すと、LCD コントローラ 機能(描画、ブリンク、64/4096 色表示、LED バックライトの調光等)に関する動 作を一通り実行します。 一通り実行が終了したら、自動的にデモメニュー画面に戻ります。 1-3-5 デモンストレーション 4 デモメニュー画面の[デモンストレーション 4]を押すと、描画ライブラリ関 数による描画、文字の描画を行います。 しばらくすると、自動的にデモメニュー画面に戻ります。 7/25 2014/2/3 2.ソースファイルについて このデモソフトウェアは、主に以下のソースファイルで構成されています。 ① KSLTWVCIEVADEMO.c このファイルは、デモソフトのメインとなるソースファイルです。 ② lcdlib.c と lcdlib.h これらのファイルは、描画用ライブラリです。LCD コントローラのレジスタ設定関 数や、描画関数などが納められています。 ③ FlashRom.c と FlashRom.h これらのファイルは、CPU-361L(CPU 周辺回路のみ)に搭載されている漢字用 ROM にアクセスして、ANK 文字や漢字を表示するための関数、KS-LTWV-CI EVALUATION BOARD に搭載されている画像用フラッシュメモリの消去、書き 込みを行う関数などが納められています。 ④ camera.c と camera.h これらのファイルは、CMOS カメラモジュール OV7670+FIFO カメラモジュー ル(日昇テクノロジー社製)の、レジスタ初期設定値、レジスタ初期化関数及び I2C 通信用関数などが納められています。 ⑤ gazou.c このファイルは、画像データ描画関数などが納められています。 ⑥ tpbios.c このファイルは、タッチパネルデータ取得関数などが納められています。 8/25 2014/2/3 3.関数について 主な関数について、説明します。 3-1 Lcdlib.c 3-1-1 レジスタ設定関連について ○ void fnSetColorMap(unsigned char ucAdd,unsigned char ucData) 引数 カラーマップのアドレス、設定データ 戻り値 無し 説明 64色分のカラーマップアドレスに、4096色から選んだ色データを 設定します。 ○ fn_sadrxypos_Set(int iX,int iY) 引数 サブ画面表示領域読み出し開始アドレスの設定 戻り値 無し 説明 サブ画面表示領域読み出し開始水平アドレスレジスタとサブ画面表示領 域読み出し開始垂直アドレスレジスタの設定をします。 ○ fn_sxsize_SetReg(unsigned short usData) 引数 サブ画面水平表示サイズの設定 戻り値 無し 説明 サブ画面水平表示サイズレジスタの設定をします。 ○ fn_sysize_SetReg(unsigned short usData) 引数 サブ画面垂直表示サイズの設定 戻り値 無し 説明 サブ画面垂直表示サイズレジスタの設定をします。 ○ fn_sxdisppos_SetReg(unsigned short usData) 引数 サブ画面水平表示位置の設定 戻り値 無し 説明 サブ画面水平表示位置レジスタの設定をします。 ○ fn_sydisppos_SetReg(unsigned short usData) 引数 サブ画面垂直表示位置の設定 戻り値 無し 説明 サブ画面垂直表示位置レジスタの設定をします。 ○ fnSetCameractlReg1(unsigned char ucData) 引数 カメラ画像書き込みバッファ及びエリアの設定 戻り値 無し 説明 カメラ画像書き込みバッファ及びエリア指定レジスタの設定をします。 9/25 2014/2/3 ○ fnSetCamerasizeReg1(unsigned char ucData) 引数 カメラ制御サイズの設定 戻り値 無し 説明 カメラ制御サイズレジスタの設定をします。 ○ fn_cwrxypos_Set(int iX,int iY) 引数 カメラ画像データ書き込み開始アドレスの設定 戻り値 無し 説明 カメラ画像データ書き込み開始水平アドレスレジスタとカメラ画像デー タ書き込み開始垂直アドレスレジスタの設定をします。 ○ void fnBankAdrSetReg(unsigned char ucData) 引数 アドレスバンク指定 説明 戻り値 無し KS-LTWV-CI EVALUATION BOARD に搭載されている画像用フラ ッシュメモリへアクセスする際のアドレス用バンクレジスタです。A22 ~A25 までが対象です。 ○ void fngazouxstratpos_set(unsigned short usData) 引数 画像表示開始 X 座標を指定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、表示開始 X 座標を入れます。 本関数を使った画像転送関数が 3-5 項で出てきます。 ○ void fngazouystratpos_set(unsigned short usData) 引数 画像表示開始 Y 座標を指定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、表示開始 Y 座標を入れます。 本関数を使った画像転送関数が 3-5 項で出てきます。 ○ void fngazouadr_set(unsigned int uiData) 引数 画像データ保存先先頭アドレスを指定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、ビットマップデータの保存先先頭アドレスを入れます。 本関数を使った画像転送関数が 3-5 項で出てきます。 10/25 2014/2/3 ○ void fngazouwidth_set(unsigned short usData) 引数 表示幅を指定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、ビットマップデータの X 方向サイズを入れます。 本関数を使った画像転送関数が 3-5 項で出てきます。 ○ void fngazouheight_set(unsigned short usData) 引数 表示高さを指定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、ビットマップデータの Y 方向サイズを入れます。 本関数を使った画像転送関数が 3-5 項で出てきます。 ○ void fngazoutensou_start(unsigned char ucData) 引数 転送開始の設定 戻り値 無し 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、スタートトリガです。 ○ unsigned char fngazoutensou_statusread() 引数 無し 戻り値 ステータス 説明 画像用フラッシュメモリにあるビットマップデータを LCDC が表示す る際、終了トリガです。 本関数を使った画像転送関数が 3-5 項で出てきます。 ○ void fn_dispxypos_Set(int iX,int iY) 引数 X 座標、Y 座標 戻り値 無し 説明 メイン画面表示領域の読み出し開始アドレスを設定します。 ○ void fnSetAreaReg(unsigned char ucData) 引数 エリア 戻り値 無し 説明 表示エリア、書き込みエリアなどを設定します。 ○ void fn_pene_Set(unsigned char ucdt,unsigned short uscolor) 引数 透過有効無効、透過色 戻り値 無し 説明 画像データ転送において、透過有効無効と透過色を設定します。 11/25 2014/2/3 ○ fnSetRDAreaReg(unsigned char ucData) 引数 読み込みエリア 戻り値 無し 説明 読み込み行うエリアを設定します。 ○ unsigned char touchx_read() 引数 無し 戻り値 X データ 説明 タッチパネルの X 方向 A/D データを読み取ります。 ○ unsigned char touchy_read() 引数 無し 戻り値 Y データ 説明 タッチパネルの Y 方向 A/D データを読み取ります。 ○ void fn_pwmfreq_SetReg(unsigned short usData) 引数 周波数 戻り値 無し 説明 PWM の周波数を設定します。 ○ void 引数 fn_pwmonwid_SetReg(unsigned short usData) ON 幅 戻り値 無し 説明 PWM の ON 幅を設定します。 ○ void fnSetReg3(unsigned char ucData) 引数 レジスタ3の設定 戻り値 無し 説明 レジスタ3の設定をします。 ○ void fnSetReg1(unsigned char ucData) 引数 レジスタ 1 の設定 戻り値 無し 説明 レジスタ 1 の設定をします。 ○ void fnSetReg2(unsigned char ucData) 引数 レジスタ2の設定 戻り値 無し 説明 レジスタ2の設定をします。 12/25 2014/2/3 3-1-2 コード変換関連 ○ unsigned char *fnsjistojis(unsigned char *sjiscode, unsigned char *jiscode) 引数 sjis,jis のコード 戻り値 sjis コードのポインタアドレス 説明 sjis コードから jis コードへ変換します。 ○ unsigned char *fnjistosjis(unsigned char *jiscode, unsigned char *sjiscode) 引数 sjis,jis のコード 戻り値 jis コードのポインタアドレス 説明 jis コードから sjis コードへ変換します。 3-1-3 ○ 描画関数について void 引数 fnDot(unsigned int uiX,unsigned int uiY,unsigned short sCol) (uiX,uiY) :点の x,y 座標 sCol:ドットの表示色 戻り値 無し 説明 与えた座標に任意色で点を描きます。 例)fnDot(20,460,0xffff); 座標(20,460)に白色で点を描きます。 ○ unsigned short fnReadDot(unsigned int uiX,unsigned int uiY) 引数 (uiX,uiY) : 点の x,y 座標 戻り値 表示色 説明 設定位置の色を読みます。 例)uiD=fnDot(20,460,0xffff); 座標(20,460)描かれている色を uiD に転送します。 13/25 2014/2/3 ○ void fnLine(unsigned int uiX1,unsigned int uiY1, unsigned int uiX2,unsigned int uiY2,unsigned short usC) 引数 (uiX1,uiY1)(uiX2,uiY2):開始・終了アドレス 戻り値 無し 説明 与えた座標間を任意色で斜線を描きます。 usC:色 例)fnLine(50,20,480,380,0xf100); 2 点の座標(50,20) (480,380)で結ばれる直線を赤色で描きます。 ○ void fnLine_draw(unsigned int uiX1,unsigned int uiY1, unsigned int uiX2,unsigned int uiY2,unsigned short usC) 引数 (uiX1,uiY1)(uiX2,uiY2) :開始・終了アドレス usC:色 戻り値 無し 説明 与えた座標間を任意の色で線を描きます。描画は LCDC が行います。 例)fnLine_draw (50,20,480,380,0xf100); 2 点の座標(50,20) (480,380)で結ばれる直線を赤色で描きます。 ○ void fnPaintBox(unsigned int uiX1,unsigned int uiY1, unsigned int uiX2,unsigned int uiY2,unsigned short usC) 引数 (uiX1,uiY1)(uiX2,uiY2) :開始・終了アドレス 戻り値 無し 説明 与えた座標間を任意色で塗りつぶします。 ucC:色 例)fnPaintBox(340,20,500,240,0x07e0); 2 点の座標(340,20) (500,240)で囲まれるエリアを緑色で塗りつぶします。 ○ void fnPaintBoxC(unsigned int uiX1,unsigned int uiY1, unsigned int uiX2,unsigned int uiY2, unsigned char ucC,unsigned char ucD) (uiX1,uiY1)(uiX2,uiY2) :開始・終了アドレス 引数 ucC:色(左線・上線) ucD:色(右線・下線) 戻り値 無し 説明 与えた座標間の縁取りを任意色で描きます。2 つの色を変えれば影が付 いたように見えます。 例)fnPaintBoxC(340,20,500,240,0xffff,0x0000); 2 点の座標(340,20) (500,240)で囲まれるエリアの淵を白色と黒色で描き ます 14/25 2014/2/3 ○ void fnBox_draw(unsigned int uiX1,unsigned int uiY1, unsigned int uiX2,unsigned int uiY2,unsigned short usC) 引数 (uiX1,uiY1)(uiX2,uiY2) :開始・終了アドレス usC : 色 戻り値 無し 説明 与えた座標間を任意色で塗りつぶします。描画は LCDC が行います。 例)fnBox_draw (340,20,500,240,0x07e0); 2 点の座標(340,20) (500,240)で囲まれるエリアを緑色で塗りつぶします。 ○ void fnCircle(unsigned int uiX1,unsigned int uiY1, unsigned int Radx,unsigned int Rady,unsigned char ucC) 引数 (uiX1,uiY1):中心座標 Rad: 半径 ucC : 色 戻り値 無し 説明 任意色で与えた座標を中心とした円を引きます。 例)fnCircle(120,180,100,100,0x001f); 中心の座標(120,180)、半径 100 の円を青色で描きます。 ○ void fnCircleC(unsigned int uiX1,unsigned int uiY1, unsigned int Radx,unsigned int Rady,unsigned char ucC) 引数 (uiX1,uiY1):中心座標 Rad:半径 ucC:色 戻り値 無し 説明 任意色で与えた座標を中心とした円を塗りつぶします。 例)fnCircleC(120,180,100,100,0x001f); 中心の座標(120,180)、半径 100 の円を青色で塗りつぶします。 ○ void cls(unsigned short usColor) 引数 usColor:色 戻り値 無し 説明 1024×1024 ドットのエリアを指定した単色で描きます。描画は LCDC が行います。 15/25 2014/2/3 ○ void fnChkClsend(void) 引数 無し 戻り値 無し 説明 上記関数の動作完了待ちを行います。 例)cls(0xffff); fnChkClsend(); と実行すると、画面全体を白色で描きます。 ○ ○ void cls2(unsigned short usColor) 引数 usColor 戻り値 無し 説明 1024×1024 ドットのエリアを指定した単色で描きます。 void fn7seg(unsigned int uiX,unsigned int uiY,int iValue, unsigned char cColum,unsigned char col,unsigned char coloff) 引数 uiX,uiY 原点の X,Y 座標(7seg の左上開始座標) iValue 表示データ cColum 表示桁数 最大 5 桁まで col 表示部の色 coloff 表示 OFF 部の色 戻り値 なし 説明 引数(iValue)で数値を渡すと、cColum 桁の 7seg パターンを描画しま す。 例)fn7seg(420,300,999,3,0xffff,0x0000); と実行すると、文字開始座標(420,300)から文字色が白色、背景色が黒 色で“999”と 7 セグメント LED に似せた文字列を 3 文字描画します。 16/25 2014/2/3 3-2 Flashrom.c 3-2-1 設定関連 ○ void fnUnitFlashrom(void) 引数 無し 戻り値 無し 説明 設定した外部変数の初期化を行います。 関数内で使用してある外部変数が書かれています。 ○ ○ void fnLocate(unsigned int uiCurX,unsigned int uiCurY) 引数 (uiCurX、uiCurY) 戻り値 無し 説明 文字の開始位置を決めます。 void fnSetColor(unsigned short cl1,unsigned short cl2) 引数 cl1:文字色 cl2:背景色 戻り値 無し 説明 各大きさの文字部の色(文字部以外の色)を決めます。 3-2-2 ANK 文字表示関連 ○ void fnPutS(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 12×24dot の文字を一行描きます。 X 方向は(12+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文 字は描画されません。 ○ void fnPut2S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 12×24dot の文字の縦 2 倍角を一行描きます。 X 方向は(12+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文 字は描画されません。 17/25 2014/2/3 ○ void fnPut4S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 12×24dot の文字の縦横 2 倍(4 倍)角を一行描きます。 X 方向は(24+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文 字は描画されません。 ○ void fn16PutS(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 8×16dot の文字を一行描きます。 X 方向は(8+uiCursorBandX)dot 分インクリメントします。 ○ void fn16Put2S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 8×16dot の文字の縦 2 倍角を一行描きます。 X 方向は(8+uiCursorBandX)dot 分インクリメントします。 ○ void fn16Put4S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 8×16dot の文字の縦横 2 倍(4 倍)角を一行描きます。 X 方向は(16+uiCursorBandX)dot 分インクリメントします。 18/25 2014/2/3 ○ void fn16Put9S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 8×16dot の文字の縦横 3 倍(9 倍)角を一行描きます。 X 方向は(24+uiCursorBandX)dot 分インクリメントします。 例) fnLocate(10,24); fnSetColor(0xffff,0x0000); fnPutS(“ABCD”) と実行すると、文字開始座標(10,24)から文字色が白色、背景色が黒色で “ABCD”と文字列を描画します。 3-2-3 漢字文字表示関連 ○ void fnKanjiS(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 24×24dot の文字を一行描きます。 X 方向は(24+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文字 は描画されません。 ○ void fnKanji2S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 24×24dot の文字の縦 2 倍角を一行描きます。 X 方向は(24+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文字 は描画されません。 19/25 2014/2/3 ○ void fnKanji4S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 24×24dot の文字の縦横 2 倍(4 倍)角を一行描きます。 X 方向は(48+uiCursorBandX)dot 分インクリメントします。 注)CPU-361L(CPU 周辺回路のみ)に搭載されている漢字 ROM には、 このフォントデータはありません。その為、この関数を使用しても文字 は描画されません。 ○ void fn16KanjiS(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 16×16dot の文字を一行描きます。 X 方向は(16+uiCursorBandX)dot 分インクリメントします。 ○ void fn16Kanji2S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 16×16dot の文字の縦 2 倍角を一行描きます。 X 方向は(16+uiCursorBandX)dot 分インクリメントします。 ○ void fn16Kanji4S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 16×16dot の文字の縦横 2 倍(4 倍)角を一行描きます。 X 方向は(32+uiCursorBandX)dot 分インクリメントします。 20/25 2014/2/3 ○ void fn16Kanji9S(char *cp) 引数 s:キャラクタ文字列のポインタ 戻り値 無し 説明 16×16dot の文字の縦横 3 倍(9 倍)角を一行描きます。 X 方向は(48+uiCursorBandX)dot 分インクリメントします。 例) fnLocate(10,24); fnSetColor(0xffff,0x0000); fnKanjiS(“現住所”) と実行すると、文字開始座標(10,24)から文字色が白色、背景色が黒色で “現住所”と文字列を描画します。 3-2-4 画像関連 ○ ○ fngazouyoufrom_allerase() 引数 無し 説明 画像用フラッシュメモリの全消去を行います。 void 戻り値 無し fngazouyoufrom_data_write(unsigned int uiadr, unsigned short usdata) 引数 書き込みアドレス、書き込みデータ 戻り値 無し 説明 画像用フラッシュメモリの設定したアドレスへ、データを書き込みます。 ○ unsigned short fngazouyoufrom_data_read(unsigned int uiadr) 引数 読み出しアドレス 戻り値 読み出しデータ 説明 画像用フラッシュメモリから、設定したアドレスのデータを読み込みま す。 例) fngazouyoufrom_allerase(); fngazouyoufrom_data_write(0x100,0x5555); uiD=fngazouyoufrom_data_read(0x100); と実行すると、画像エリアのフラッシュロムを全消去し、アドレス 0x100 に 0x5555 を書き込み、そのアドレスからデータを読んで uiD に格納して います。 21/25 2014/2/3 ○ void fngazouyoufrom_data_writebuf(unsigned int uiadr) 引数 書き込みアドレス 戻り値 無し 説明 画像用フラッシュメモリの設定したアドレスへ、データを書き込みます。 書き込みは、ライトバッファプログラミング機能により、256 ワード分 まとめて書き込みます。書き込みデータは外部変数 usfrom_wrbuf の データを書き込みます。 ○ fngazouyoufrom_secterase(unsigned int uisect,int ifrom_sel); 引数 セクタ番号、フラッシュメモリ選択 戻り値 無し 説明 画像用フラッシュメモリのセクター消去を行います。 ifrom_sel が 0 の場合、KS-LTWV-CI EVALUATION BOARD に搭載 されている 2 個の画像用フラッシュメモリの CS3#側、ifrom_sel が 1 の場 合、画像用フラッシュメモリの CS4#側をセクター消去します。 22/25 2014/2/3 3-3 camera.c ○ fn_camera_init(unsigned char uccmode) 引数 カメラ表示サイズ 戻り値 無し 説明 LCD コントローラに内蔵されている I2C コントローラの初期化と、 CMOS カメラモジュール OV7670+FIFO カメラモジュール(日昇テ クノロジー社製)の、レジスタ初期設定を行います。 引数の値により、QVGA 又は CIF のサイズで設定を行います。 ○ fn_camerareg_write(unsigned char ucreg,unsigned char ucdt) 引数 カメラモジュールレジスタアドレス、書き込みデータ 戻り値 無し 説明 カメラモジュールのレジスタにデータを書き込みす。 23/25 2014/2/3 3-4 Tpbios.c 3-4-1 設定関連 ○ void fnInitTouch(void) 引数 無し 戻り値 無し 説明 設定した外部変数の初期化を行います。 関数内で使用してある外部変数が書かれています。 3-4-2 タッチパネルデータ関連 ○ void fnGetTouch10ms(void) 引数 無し 戻り値 無し 説明 LCDC より X,Y 方向タッチパネル A/D 値を読み込みます。 定期割り込みなどで使用してください。 ○ unsigned char fnGetTouch(unsigned short *uiX,unsigned short *uiY) 引数 戻り値 uiX X 座標を格納するためのポインタ uiY Y 座標を格納するためのポインタ 押下有無 TPB_STATUS_PUSH(1):押されている TPB_STATUS_OPEN(0):押されていない 説明 タッチパネルを押した時の座標位置(サイズ(800,480)に変換)が取 得できます。 例) fnGetTouch10ms(); fnGetTouch(uiX,uiY); と実行すると、タッチパネルに触れていればその座標(uiX,uiY)=(152,86)、 触れていなければ(uiX,uiY)=(0xffff,0xffff)の値が取得できます。 24/25 2014/2/3 3-5 gazou.c ○ char image_sd_to_flash( void ) 戻り値 OK(0)/NG(1) 引数 無し 説明 本関数を起動すると画像用フラッシュメモリを全消去した後、microCD 内にある画像テキストデータを読み出し、画像用フラッシュメモリへ書 き込みます。 ○ char image_sd_to_flash3( void ) 戻り値 OK(0)/NG(1) 引数 無し 説明 本関数を起動すると画像用フラッシュメモリをセクター消去した後、 microCD 内にある画像バイナリデータを読み出し、画像用フラッシュメ モリへ書き込みます。 ○ void fngazou_tensou(unsigned int uiX,unsigned int uiY, unsigned int uiwidth,unsigned int uiheight,unsigned int uiData) 引数 開始(X、Y)座標 ビットマップ(X、Y)サイズ 保存データ先頭アドレス 戻り値 無し LCDC の画像転送機能を使って、画像用フラッシュメモリからフレー 説明 ムバッファメモリに画像データを転送します。 例)0x10000 番地に保存されているサイズ 320*240 のビットマップデータ を画面の(20,40)から描かせます。 fngazou_tensou(20,40,320,240,0x10000);と書きます。 3-6 その他 ○ mmc.c、tff.c は、microSD 関連のソースファイルです。 ○ intprg.c は、割り込み先のソースファイルです。 25/25
© Copyright 2024 ExpyDoc