?? lcmdrv.h
字號:
/****************************************************************************
* 文件名:LCMDRV.H
* 功能:TC1602A驅(qū)動程序。(頭文件)
****************************************************************************/
#ifndef LCMDRV_H
#define LCMDRV_H
#define uint8 unsigned char
/* 定義LCM操作地址 */
#define LCMWR_COM (*((uint8 volatile xdata *) 0x2000))
#define LCMWR_DAT (*((uint8 volatile xdata *) 0x2001))
/*定義LCM控制字*/
#define LCM_RST 0x02 /* 復(fù)位光標(biāo)回原點(diǎn) */
#define LCM_MODE 0x3C /* 接口數(shù)據(jù)8位,顯示2行,字體為1號 */
#define LCM_NOFLASH 0x0C /* 屏幕顯示開,無光標(biāo) */
#define LCM_HIDE 0x08 /* 屏幕顯示關(guān) */
#define LCM_FLASH 0x0D /* 屏幕顯示開,并打開閃爍光標(biāo) */
#define LCM_SHIFT 0x07 /* 模塊數(shù)據(jù)輸入為增量方式,顯示光標(biāo)移動 */
#define LCM_NOSHIFT 0x06 /* 模塊數(shù)據(jù)輸入為增量方式,顯示光標(biāo)移動 */
#define LCM_SH 0x14 /* 移動光標(biāo)及整體顯示 */
/* LCM地址相關(guān)控制宏 */
#define LCM_LINE1 0x80 /* 第一行DDRAM起始地址 */
#define LCM_LINE2 0xC0 /* 第二行DDRAM起始地址 */
#define LCM_CGRAM 0x40 /* 定義CGRAM的起始地址 */
#define CLRSTR " " /* 清屏宏,使用LCMDispStr(LCM_LIN1/2,CLRSTR) */
/****************************************************************************
** 函數(shù)名稱: LCMIni()
** 功能描述: 初始化LCM模塊,設(shè)置為LCM_MODE、LCM_NOFLASH、LCM_NOSHIFT、LCM_SH,然后清屏。
** 輸 入: 無
** 輸 出: 無
****************************************************************************/
extern void LCMIni(void);
/****************************************************************************
** 函數(shù)名稱: LCMClr()
** 功能描述: 清屏。
** 輸 入:
** 輸 出:
** 注意: 本函數(shù)為宏函數(shù),調(diào)用時要注意。如if(...) LCMClr(); 是錯誤的.
****************************************************************************/
#define LCMClr() LCMDispStr(LCM_LINE1, CLRSTR); LCMDispStr(LCM_LINE2, CLRSTR)
/****************************************************************************
** 函數(shù)名稱: LCMDispStr()
** 功能描述: 向LCM模塊發(fā)送字串?dāng)?shù)據(jù),從DDRAM的指定地起adr開始一直寫,直到字符串結(jié)束或超出
** 屏幕顯示范圍。此函數(shù)可以自動換行。
** 輸 入: dstr 要寫的字串指針
** adr 寫入的DDRAM起始地址(如LCM_LINE1)
** 輸 出: 無
** 注意: 使用此函數(shù)前要初化好LCM。(適用于雙行LCM設(shè)置,且顯示為光標(biāo)移動,DDRAM地址向上增長)
****************************************************************************/
extern void LCMDispStr(uint8 adr, char *dstr);
/****************************************************************************
** 函數(shù)名稱: LCMSendComm()
** 功能描述: 向LCM模塊發(fā)送命令comm。
** 輸 入: comm 要輸出的命令
** 輸 出: 無
** 注意: 調(diào)用此函數(shù)來初化、設(shè)置LCM
****************************************************************************/
extern void LCMSendComm(uint8 comm);
/****************************************************************************
** 函數(shù)名稱: LCMSendDate()
** 功能描述: 向LCM模塊發(fā)送數(shù)據(jù)date。
** 輸 入: odata 要輸出的數(shù)據(jù)
** 輸 出: 無
** 注意: 使用此函數(shù)前要初化好LCM,再用此函數(shù)據(jù)發(fā)送顯示數(shù)據(jù)。
****************************************************************************/
extern void LCMSendDate(uint8 odate);
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -