?? lcddriver.h
字號(hào):
/****************************************************************************************
* 文件名:LCDDRIVE.H
* 功能:LCD驅(qū)動(dòng)程序,包括底層驅(qū)動(dòng),刷新顯示子程序。
* 說明:用于MagicARM2200實(shí)驗(yàn)箱,液晶控制器為S1D13503。
****************************************************************************************/
#ifndef LCDDRIVE_H
#define LCDDRIVE_H
/* 定義顏色數(shù)據(jù)類型(可以是數(shù)據(jù)結(jié)構(gòu)) */
#define TCOLOR uint8
/* 定義LCM像素?cái)?shù)宏 */
#define GUI_LCM_XMAX 320 /* 定義液晶x軸的像素?cái)?shù) */
#define GUI_LCM_YMAX 240 /* 定義液晶y軸的像素?cái)?shù) */
/* 定義S1D13503控制地址 */
#define S1D13503_REG 0x83800000
#define S1D13503_DAT 0x83400000
/* 設(shè)置顏色宏定義 */
#define BLACK 0x00 /* 黑色: 0, 0, 0 */
#define NAVY 0x02 /* 深藍(lán)色: 0, 0, 128 */
#define DGREEN 0x10 /* 深綠色: 0, 128, 0 */
#define DCYAN 0x12 /* 深青色: 0, 128, 128 */
#define MAROON 0x80 /* 深紅色:128, 0, 0 */
#define PURPLE 0x82 /* 紫色: 128, 0, 128 */
#define OLIVE 0x90 /* 橄欖綠:128, 128, 0 */
#define LGRAY 0xCA /* 灰白色:192, 192, 192 */
#define DGRAY 0x92 /* 深灰色:128, 128, 128 */
#define BLUE 0x03 /* 藍(lán)色: 0, 0, 255 */
#define GREEN 0x1C /* 綠色: 0, 255, 0 */
#define CYAN 0x1F /* 青色: 0, 255, 255 */
#define RED 0xE0 /* 紅色: 55, 0, 0 */
#define MAGENTA 0xE3 /* 品紅: 255, 0, 255 */
#define YELLOW 0xFC /* 黃色: 255, 255, 0 */
#define WHITE 0xFF /* 白色: 255, 255, 255 */
/****************************************************************************
* 名稱:GUI_Initialize()
* 功能:初始化GUI,包括初始化顯示緩沖區(qū),初始化LCM并清屏。
* 入口參數(shù):無
* 出口參數(shù):無
* 說明:用戶根據(jù)LCM的實(shí)際情況編寫此函數(shù)。
****************************************************************************/
extern void GUI_Initialize(void);
/****************************************************************************
* 名稱:GUI_FillSCR()
* 功能:全屏填充。直接使用數(shù)據(jù)填充顯示緩沖區(qū)。
* 入口參數(shù):dat 填充的數(shù)據(jù)
* 出口參數(shù):無
* 說明:用戶根據(jù)LCM的實(shí)際情況編寫此函數(shù)。
****************************************************************************/
extern void GUI_FillSCR(TCOLOR dat);
/****************************************************************************
* 名稱:GUI_ClearSCR()
* 功能:清屏。
* 入口參數(shù):無
* 出口參數(shù):無
* 說明:用戶根據(jù)LCM的實(shí)際情況編寫此函數(shù)。
****************************************************************************/
extern void GUI_ClearSCR(void);
/****************************************************************************
* 名稱:GUI_Point()
* 功能:在指定位置上畫點(diǎn)。
* 入口參數(shù): x 指定點(diǎn)所在列的位置
* y 指定點(diǎn)所在行的位置
* color 顯示顏色(對(duì)于黑白色LCM,為0時(shí)滅,為1時(shí)顯示)
* 出口參數(shù):返回值為1時(shí)表示操作成功,為0時(shí)表示操作失敗。(操作失敗原因是指定地址超出有
* 效范圍)
* 說明:用戶根據(jù)LCM的實(shí)際情況編寫此函數(shù)。
****************************************************************************/
extern uint8 GUI_Point(uint32 x, uint32 y, TCOLOR color);
/****************************************************************************
* 名稱:GUI_ReadPoint()
* 功能:讀取指定點(diǎn)的顏色。
* 入口參數(shù):x 指定點(diǎn)所在列的位置
* y 指定點(diǎn)所在行的位置
* ret 保存顏色值的指針
* 出口參數(shù):返回0時(shí)表示指定地址超出有效范圍。
* 說明:對(duì)于單色,設(shè)置ret的d0位為1或0,4級(jí)灰度則為d0、d1有效,8位RGB則d0--d7有效,
* RGB結(jié)構(gòu)則R、G、B變量有效。
****************************************************************************/
extern int GUI_ReadPoint(uint32 x, uint32 y, TCOLOR *ret);
/****************************************************************************
* 名稱:GUI_HLine()
* 功能:畫水平線。
* 入口參數(shù): x0 水平線起點(diǎn)所在列的位置
* y0 水平線起點(diǎn)所在行的位置
* x1 水平線終點(diǎn)所在列的位置
* color 顯示顏色(對(duì)于黑白色LCM,為0時(shí)滅,為1時(shí)顯示)
* 出口參數(shù):無
* 說明:對(duì)于單色、4級(jí)灰度的液晶,可通過修改此函數(shù)作圖提高速度,如單色LCM,可以一次更
* 新8個(gè)點(diǎn),而不需要一個(gè)點(diǎn)一個(gè)點(diǎn)的寫到LCM中。
****************************************************************************/
extern void GUI_HLine(uint32 x0, uint32 y0, uint32 x1, TCOLOR color);
/****************************************************************************
* 名稱:GUI_RLine()
* 功能:畫垂直線。
* 入口參數(shù): x0 垂直線起點(diǎn)所在列的位置
* y0 垂直線起點(diǎn)所在行的位置
* y1 垂直線終點(diǎn)所在行的位置
* color 顯示顏色
* 出口參數(shù):無
* 說明:對(duì)于單色、4級(jí)灰度的液晶,可通過修改此函數(shù)作圖提高速度,如單色LCM,可以一次更
* 新8個(gè)點(diǎn),而不需要一個(gè)點(diǎn)一個(gè)點(diǎn)的寫到LCM中。
****************************************************************************/
extern void GUI_RLine(uint32 x0, uint32 y0, uint32 y1, TCOLOR color);
/****************************************************************************
* 名稱:GUI_CmpColor()
* 功能:判斷顏色值是否一致。
* 入口參數(shù):color1 顏色值1
* color2 顏色值2
* 出口參數(shù):返回1表示相同,返回0表示不相同。
* 說明:由于顏色類型TCOLOR可以是結(jié)構(gòu)類型,所以需要用戶編寫比較函數(shù)。
****************************************************************************/
//extern int GUI_CmpColor(TCOLOR color1, TCOLOR color2);
#define GUI_CmpColor(color1, color2) (color1==color2)
/****************************************************************************
* 名稱:GUI_CopyColor()
* 功能:顏色值復(fù)制。
* 入口參數(shù):color1 目標(biāo)顏色變量
* color2 源顏色變量
* 出口參數(shù):無
* 說明:由于顏色類型TCOLOR可以是結(jié)構(gòu)類型,所以需要用戶編寫復(fù)制函數(shù)。
****************************************************************************/
//extern void GUI_CopyColor(TCOLOR *color1, TCOLOR color2);
#define GUI_CopyColor(color1, color2) *color1 = color2
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -