?? lcd.h
字號:
#ifndef __LCD_H
#define __LCD_H
#include "typedef.h"
#define LCD_WIDTH 16 //顯示區寬度 16 * 8 = 128 dot
#define LCD_HEIGHT 64 //64 dot
#define LCD_TEXT_HOME_ADDR 0x0000 //文本顯示區首地址
#define LCD_GRAPH_HOME_ADDR ((LCD_HEIGHT/8)*30) //圖形顯示區首地址
#define LCD_DATA_BUS P1 //MCU P1<------> LCM
// ASCII字符控制代碼解釋定義
#define STX 0x02
#define ETX 0x03
#define EOT 0x04
#define ENQ 0x05
#define BS 0x08
#define CR 0x0D
#define LF 0x0A
#define DLE 0x10
#define ETB 0x17
#define SPACE 0x20
#define COMMA 0x2C
// T6963C 命令定義
#define LC_CUR_POS 0x21 // 光標位置設置
#define LC_CGR_POS 0x22 // CGRAM偏置地址設置
#define LC_ADD_POS 0x24 // 地址指針位置
#define LC_TXT_STP 0x40 // 文本區首址
#define LC_TXT_WID 0x41 // 文本區寬度
#define LC_GRH_STP 0x42 // 圖形區首址
#define LC_GRH_WID 0x43 // 圖形區寬度
#define LC_MOD_OR 0x80 // 顯示方式:邏輯“或”
#define LC_MOD_XOR 0x81 // 顯示方式:邏輯“異或”
#define LC_MOD_AND 0x82 // 顯示方式:邏輯“與”
#define LC_MOD_TCH 0x83 // 顯示方式:文本特征
#define LC_DIS_SW 0x90 // 顯示開關:D0=1/0:光標閃爍啟用/禁用;
// D1=1/0:光標顯示啟用/禁用;
// D2=1/0:文本顯示啟用/禁用;
// D3=1/0:圖形顯示啟用/禁用;
#define LC_CUR_SHP 0xA0 // 光標形狀選擇:0xA0-0xA7表示光標占的行數
#define LC_AUT_WR 0xB0 // 自動寫設置
#define LC_AUT_RD 0xB1 // 自動讀設置
#define LC_AUT_OVR 0xB2 // 自動讀/寫結束
#define LC_INC_WR 0xC0 // 數據一次寫,地址加1
#define LC_INC_RD 0xC1 // 數據一次讀,地址加1
#define LC_DEC_WR 0xC2 // 數據一次寫,地址減1
#define LC_DEC_RD 0xC3 // 數據一次讀,地址減1
#define LC_NOC_WR 0xC4 // 數據一次寫,地址不變
#define LC_NOC_RD 0xC5 // 數據一次讀,地址不變
#define LC_SCN_RD 0xE0 // 屏讀
#define LC_SCN_CP 0xE8 // 屏拷貝
#define LC_BIT_OP 0xF0 // 位操作:
// D0-D2:定義D0-D7位;D3:1置位;0:清除
void LCD_Busy (uchar autowr) ; //測狀態
uchar LCD_BusyStatus () ; //測狀態
void LCD_CheckBusy1(void) ;
//void LCD_CheckBusy2(void) ;
//void LCD_CheckBusy3(void) ;
void LCD_Write1 (uchar dat,uchar comm) ; //寫一個數據和一個命令
void LCD_Write2 (uchar datl,uchar dath,uchar comm) ; //寫兩個數據和一個命令
void LCD_WriteInt (uint dat,uchar comm) ; //寫一個16進制數據和一個命令
void LCD_AutoWrite (uchar dat) ; //自動寫數據
uchar LCD_Read(void) ;
//uchar LCD_AutoRead(void) ;
void LCD_Comm (uchar comm) ; //寫命令
void LCD_Data (uchar dat) ; //寫數據
void LCD_Init (void) ;
void LCD_Cls (void) ;
void LCD_ClsBlock(uchar x1,uchar y1,uchar x2,uchar y2);
//void LCD_GraphSetAddr(uchar x,uchar y) ; /*地址*/
//void LCD_TextSetAddr(uchar x,uchar y) ; /*地址*/
//void LCD_ClrPixel(uchar x,uchar y) ;
//void LCD_Putpixel(uchar x,uchar y) ;
//void LCD_ShowCursor(uchar x,uchar y) ;/*光標*/
//void LCD_HideCursor(void) ;
void LCD_LineH(uchar y) ;
void LCD_LineV(uchar x,uchar y1,uchar y2) ;
void LCD_LineXX(uchar x1,uchar x2,uchar y);
//void LCD_Rectange(uchar x1,uchar y1,uchar x2,uchar y2);
//void LCD_Line(uchar x0,uchar y0,uchar x1,uchar y1) ;
void LCD_PutImg(uchar x,uchar y,uchar w,uchar h,uchar *img) ;
//void LCD_PrintNumStr(uchar x,uchar y,uchar *s) ;
//void LCD_TextPutchar(uchar x,uchar y,uchar c) ;
//void LCD_TextPrint(uchar x,uchar y,char *s) ;
//void LCD_TextPrintHex(uchar x,uchar y,uchar hex) ;
//void LCD_GrapPutchar(uchar x,uchar y,uchar num) ;
//void LCD_GrapPrint(uchar x,uchar y,uchar code *s) ;
//void LCD_Linexy(uchar x0,uchar y0,uchar xt,uchar yt) ;
void LCD_PrintBlackBlock(uchar x,uchar y,bool not_empty);
//void LCD_PrintWord(uchar x,uchar y,uint16 n,uchar start) ;
//void LCD_PrintHex(uchar x,uchar y,uchar hex) ;
//void LCD_TextPrintWord(uchar x,uchar y,uint16 n,uchar start) ;
void LCD_ReverseRect(uchar x,uchar y,uchar w,uchar h);
void LCD_PrintHz12(uchar x,uchar y,uchar *s);
void LCD_PrintHz16(uchar x,uchar y,uchar *s);
void LCD_Print24X32(uchar x, uchar y,uchar *s);
void LCD_Print6X8(uchar x, uchar y,uchar *s);
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -