?? g19264-ly.h
字號:
/*寫漢字液晶子程 液晶屏分為4行*12列漢字,全部使用模擬接口方式。
/* TGLCMLIMIT64A接口程序(模擬方式)
液晶模塊供應商:廣州市盛寶電子有限公司 Tel:020-87592491 Fax:87541571
Email: tinsharp@public.guangzhou.gd.cn
;***************************************************************************
;連線圖:
;*LCM---89C52* *LCM---89C52* *LCM-------89C52* *LCM----------89C52* *
;*DB0---P0.0* *DB4---P0.4* *D/I-------P2.6* *CS1----------P2.4* *
;*DB1---P0.1* *DB5---P0.5* *R/W-------P2.7* *CS2----------P2.5* *
;*DB2---P0.2* *DB6---P0.6* *RST--------VCC* *CS3----------P3.2* *
;*DB3---P0.3* *DB7---P0.7* *E---------P2.3* *
;注:89C52的晶振頻率為12MHz *
;***************************************************************************/
//畫線部分請參照avr的c程序。
//#pragma src /*生成ASM文件開關,必要時打開 */
#include<reg52.h>
#include<math.h>
#include<INTRINS.H>
#define Uchar unsigned char
#define word unsigned int
#define byte unsigned char
#define dword unsigned long
#define uchar unsigned char
sfr T2MOD=0xc9;
sfr P4 = 0xe8;
sfr P4CONA = 0xC2;
sfr P4CONB = 0xC3;
sfr CHPCON = 0xBF;
sfr CHPENR = 0xF6;
sfr XICON = 0xC0;
sfr WDT_CONTR=0xe1;//看門狗寄存器
sbit P4_0=P4^0;
sbit P4_1=P4^1;
sbit P4_2=P4^2;
sbit P4_3=P4^3;
sbit BL=P4^3; //背光源
sbit BEEP=P1^0; //蜂鳴器
bit keydn=0;//鍵盤有效按下標志位
bit enterflg;//確認鍵按下與否標志
Uchar read_count;
Uchar data keybuf;//輸入密碼存儲區
Uchar read_count;
Uchar card_id[3];
#define WDT 63
/***********液晶顯示器接口引腳定義***************/
sbit Elcm= P1^1; //
sbit CS1LCM= P3^4; //
sbit CS2LCM= P4^0; //
sbit CS3LCM= P4^2; /*這個連接只是做實驗的臨時接法。*/
sbit Dilcm= P1^5; //
sbit Rwlcm= P1^2; //
sfr Datalcm= 0x80; //數據口
//sbit CEDS = P1^1;
/***********常用操作命令和參數定義***************/
#define DISPON 0x3f /*顯示on */
#define DISPOFF 0x3e /*顯示off */
#define DISPFIRST 0xc0 /*顯示起始行定義 */
#define SETX 0x40 /*X定位設定指令(頁) */
#define SETY 0xb8 /*Y定位設定指令(列) */
#define Lcdbusy 0x80 /*LCM忙判斷位 */
/**************顯示分區邊界位置*****************/
#define MODL 0x00 /*左區 */
#define MODM 0x40 /*左區和中區分界 */
#define MODR 0x80 /*中區和右區分界 */
#define LCMLIMIT 0xC0 /*顯示區的右邊界 */
/****************全局變量定義*******************/
Uchar col,row,cbyte; /*列x,行(頁)y,輸出數據 */
Uchar alarm;
/*****************函數列表**********************/
void Lcminit(void); /*液晶模塊初始化 */
void Delay(Uchar); /*延時,入口數為Ms */
void lcdbusyL(void); /*busy判斷、等待(左區) */
void lcdbusyM(void); /*busy判斷、等待(中區) */
void lcdbusyR(void); /*busy判斷、等待(右區) */
void Putedot(Uchar); /*半角字符輸出 */
void Putcdot(Uchar); /*全角(漢字)輸出 */
void Wrdata(Uchar); /*數據輸出給LCM */
void Lcmcls( void ); /*LCM全屏幕清零(填充0) */
void wtcom(void); /*公用busy等待 */
void Locatexy(void); /*光標定位 */
void WrcmdL(Uchar); /*左區命令輸出 */
void WrcmdM(Uchar); /*中區命令輸出 */
void WrcmdR(Uchar); /*右區命令輸出 */
void Putstr(Uchar *puts,Uchar i); /*中英文字符串輸出 */
void Rollscreen(Uchar x); /*屏幕向上滾動演示 */
void Rddata(void); /* 從液晶片上讀數據 */
void Linehv(Uchar length); /*橫(豎)方向畫線 */
void point(void); /*打點 */
void Linexy(Uchar endx,Uchar endy);/*畫線。任意方向的斜線,不支持垂直的或水平線 */
Uchar getdate(uchar);//讀時間
void init_ds(void);
void init_serial(); //串口初始化
/******************數組列表*********************/
Uchar code Ezk[]; /*ASCII常規字符點陣碼表 */
Uchar code Hzk[]; /*自用漢字點陣碼表 */
Uchar code STR1[]; /*自定義字符串 */
Uchar code STR2[]; //
Uchar code STR3[]; //
Uchar code STR4[];
Uchar code HZ[];
Uchar code STR2[]=
{
0x80,0x81,0x82,0x83,0x84,0x85,
0x86,0x87,0x88,0x89,0x8a,0x8B
};
Uchar code HZ[]={
/*-- 文字: 年 --*/
/*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,
0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00,
0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,
0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
/*-- 文字: 月 --*/
/*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
0x00,0x00,0x00,0x00,0x00,0xFF,0x11,0x11,
0x11,0x11,0x11,0xFF,0x00,0x00,0x00,0x00,
0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x01,
0x01,0x21,0x41,0x3F,0x00,0x00,0x00,0x00,
/*-- 文字: 日 --*/
/*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,
0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,
0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,
/*時 CCAB1 */
0x00,0xFC,0xFC,0x44,0x44,0xFC,0xFC,0x90,
0x90,0x10,0x10,0xFF,0xFF,0x10,0x10,0x10,
0x00,0x07,0x07,0x04,0x04,0x07,0x07,0x00,
0x03,0x43,0xC0,0xFF,0x7F,0x00,0x00,0x00,
/*分 CB7D6 */
0x80,0xC0,0x60,0xB8,0x9F,0x87,0x82,0x80,
0x83,0x87,0x9C,0xB8,0x70,0xE0,0xC0,0x40,
0x00,0x80,0xC0,0x60,0x30,0x1F,0x0F,0x00,
0x20,0x60,0x7F,0x3F,0x00,0x00,0x00,0x00,
/*秒 CC3EB */
0x12,0x12,0xD2,0xFE,0xFF,0x91,0xD1,0xF8,
0x38,0x10,0xFF,0xFF,0x08,0x18,0x70,0x60,
0x04,0x07,0x03,0xFF,0xFF,0x83,0x83,0xC0,
0x40,0x60,0x23,0x33,0x18,0x0C,0x07,0x03,
/*-- 文字: 星 --*/
/*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
0x00,0x00,0x00,0xBE,0x2A,0x2A,0x2A,0xEA,
0x2A,0x2A,0x2A,0x2A,0x3E,0x00,0x00,0x00,
0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7F,
0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00,
/*-- 文字: 期 --*/
/*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
0x00,0x04,0xFF,0x54,0x54,0x54,0xFF,0x04,
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -