⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.c

📁 lcd程序,1335控制器, 硬件平台:带sed1335LCD驱动器的320*240LCD模块,ads7846伟福仿真机
💻 C
📖 第 1 页 / 共 3 页
字号:
/*;-------------------------------------------------------------------
;编写:    李满庭
;用途:    A.用于900NM半导体激光美容仪的320*240LCM驱动,共分三个界面
;          1.合作公司标志(格雷斯)
;          2.安全界面,用户必须输入密码方可进入工作界面
;          3.工作界面
;硬件平台:带sed1335LCD驱动器的320*240LCD模块,ads7846伟福仿真机,
;软件平台: Keil v6.12
;时间:    2004年6月3日
;修改记录:
;          1.6月6日,把同一种字体的字都放在同一个code里,在算法中实现把指针的首地址读出
;          2.6月7日,把WriteOneWork()中的字节个数参数由uchar类型改为uint类型,实现把图片描出
;          3.6月8日,
;
;
;       LCM指令端口地址FFFFH:数据端口地址:FEFFH
;       320*240点阵整屏的点象素为76800,也就有9600(2580H)个字节,单屏图形方式
;       所以第一区显示缓存地址范围为:0000H----257FH
;       所以第二区显示缓存地址范围为:2580H----4AFFH
;       所以第三区显示缓存地址范围为:4B00H----707FH
;       320*240点阵整屏---一行占40个字节的显示缓存
;
;--------------------------------------------------------------------*/

#include <reg52.h>
#include <absacc.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

#define LcdCommand           XBYTE[0xFEFF]
#define LcdDataWrite         XBYTE[0xFCFF]


///////////////////////////////////////////////////////////////////////////////////////
//输入密码界面
///////////////////////////////////////////////////////////////////////////////////////
uchar code ZKqsrmm[]={//请输入密码:
0x20,0x40,0x10,0x48,0x13,0xFC,0x00,0x40,0xFD,0xF8,0x00,0x40,0x7B,0xFE,0x00,0x00,
0x79,0xF8,0x01,0x08,0x79,0xF8,0x49,0x08,0x49,0xF8,0x79,0x08,0x41,0x28,0x01,0x10,
0x20,0x40,0x20,0xA0,0x20,0xA0,0xF9,0x10,0x22,0x0E,0xFD,0xF4,0xA8,0x00,0xFB,0xC4,
0xAA,0x54,0xFB,0xD4,0x22,0x54,0xFF,0xD4,0x22,0x54,0x22,0x44,0x22,0x44,0x22,0xCC,
0x04,0x00,0x02,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x02,0x80,0x02,0x80,0x02,0x80,
0x04,0x40,0x04,0x40,0x08,0x20,0x08,0x20,0x10,0x10,0x20,0x10,0x40,0x0E,0x80,0x04,
0x02,0x00,0x01,0x00,0x7F,0xFE,0x42,0x02,0x89,0x24,0x28,0xC8,0x4B,0x04,0x0C,0x10,
0x77,0xF0,0x01,0x00,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x20,0x08,
0x00,0x00,0x7D,0xFC,0x11,0x20,0x11,0xFC,0x11,0x20,0x21,0xFC,0x3D,0x20,0x65,0x20,
0xA5,0xFE,0x24,0x02,0x25,0x56,0x25,0x56,0x25,0x56,0x3E,0x02,0x24,0x14,0x00,0x08,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x18,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,};

uchar code ZKnum[]={//0123456789
0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x24,0x18,0x00,0x00,
0x00,0x00,0x00,0x10,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x04,0x04,0x08,0x10,0x20,0x42,0x7E,0x00,0x00,
0x00,0x00,0x00,0x3C,0x42,0x42,0x04,0x18,0x04,0x02,0x02,0x42,0x44,0x38,0x00,0x00,
0x00,0x00,0x00,0x04,0x0C,0x14,0x24,0x24,0x44,0x44,0x7E,0x04,0x04,0x1E,0x00,0x00,
0x00,0x00,0x00,0x7E,0x40,0x40,0x40,0x58,0x64,0x02,0x02,0x42,0x44,0x38,0x00,0x00,
0x00,0x00,0x00,0x1C,0x24,0x40,0x40,0x58,0x64,0x42,0x42,0x42,0x24,0x18,0x00,0x00,
0x00,0x00,0x00,0x7E,0x44,0x44,0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x42,0x3C,0x00,0x00,
0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x26,0x1A,0x02,0x02,0x24,0x38,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x1E,0x22,0x42,0x42,0x3F,0x00,0x00,
0x00,0x00,0x00,0xC0,0x40,0x40,0x40,0x58,0x64,0x42,0x42,0x42,0x64,0x58,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x22,0x40,0x40,0x40,0x22,0x1C,0x00,0x00,
0x00,0x00,0x00,0x06,0x02,0x02,0x02,0x1E,0x22,0x42,0x42,0x42,0x26,0x1B,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x7E,0x40,0x40,0x42,0x3C,0x00,0x00,
0x00,0x00,0x00,0x0F,0x11,0x10,0x10,0x7E,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
};

uchar code ZKOK[]={//确定
0x00,0x40,0x08,0x20,0xFD,0xFE,0x11,0x02,0x12,0xA4,0x20,0x90,0x25,0xFC,0x7E,0x90,
0xA4,0xFC,0x24,0x90,0x24,0xFC,0x24,0x90,0x24,0x90,0x3C,0xFE,0x20,0x80,0x00,0x80,
0x02,0x00,0x01,0x04,0x7F,0xFE,0x40,0x04,0x80,0x08,0x00,0x20,0x3F,0xF0,0x01,0x00,
0x01,0x00,0x11,0x20,0x11,0xF0,0x11,0x00,0x11,0x00,0x29,0x00,0x47,0xFE,0x80,0x00,
0x01,0x00,0xFF,0x80,0x22,0x00,0x23,0xFC,0x3E,0x04,0x22,0x84,0x22,0x88,0x3E,0x88,
0x22,0x48,0x22,0x50,0x22,0x20,0x3E,0x50,0xE2,0x48,0x42,0x8E,0x03,0x04,0x02,0x00,
0x00,0x40,0x42,0x48,0x31,0x50,0x11,0x60,0x80,0x40,0x63,0xF8,0x22,0x08,0x0A,0x08,
0x13,0xF8,0x22,0x08,0xE2,0x08,0x23,0xF8,0x22,0x08,0x22,0x08,0x22,0x28,0x22,0x10,

};

uchar code ZKxin[]={//*
0x00,0x00,0x00,0x00,0x10,0x10,0xD6,0x38,0x38,0xD6,0x10,0x10,0x00,0x00,0x00,0x00,
};

uchar code ZKdian_r[]={//__左右两边各一点
0x81,
};

uchar code ZKdian_rr[]={//__右边的点
0x01,
};

uchar code ZKdian_l[]={//__左边的点
0x80,
};

uchar code ZKheng[]={//__
0xff,
};

uchar code ZKbdt[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x10,0x00,0x08,0x10,0x60,0x06,
0x10,0x60,0x03,0x10,0x80,0x01,0x91,0x00,0x01,0x12,0x00,0x00,0x10,0x10,0x00,0x10,
0x38,0x0F,0xFF,0xFC,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x06,0x7F,0xFF,0xFF,
0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,
0x10,0x00,0x00,0x10,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x20,0x00,0x08,0x18,0xC0,0x0C,0x09,0x00,0x04,0x12,0x18,0x04,
0xFF,0xFC,0x04,0x7F,0xE0,0x1E,0x40,0x20,0x04,0x7F,0xE0,0x04,0x40,0x20,0x04,0x7F,
0xE0,0x04,0x40,0x20,0x04,0x7F,0xE0,0x0B,0x40,0x40,0x10,0xFF,0xFC,0x00,0x02,0xF8,
0x00,0x01,0x88,0x3F,0xFF,0xFC,0x02,0x01,0x00,0x01,0x81,0x00,0x00,0x81,0x00,0x00,
0x89,0x00,0x00,0x07,0x00,0x00,0x02,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x20,0x1F,0xC1,0x20,0x10,0x81,0x2C,0x12,
0x8F,0xFC,0x1F,0x89,0x24,0x12,0x8F,0xFC,0x32,0x89,0x24,0x3F,0xF9,0x24,0x60,0x4F,
0xFC,0x50,0x88,0x00,0x1F,0xC0,0x04,0x10,0x8F,0xFE,0x10,0x84,0x08,0x1F,0x87,0xF8,
0x10,0x84,0x08,0x10,0x87,0xF8,0x1F,0x84,0x28,0x10,0x82,0x30,0x10,0x81,0x20,0x13,
0x81,0x44,0x10,0x9F,0xFE,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x20,0x00,0x10,0x30,0x60,0x08,0x20,0x40,0x0C,0xC4,0x40,0x04,
0xBC,0x40,0x02,0x84,0x80,0x44,0xFC,0x84,0x24,0x85,0x78,0x34,0x85,0x88,0x14,0xFE,
0x88,0x04,0x94,0x98,0x04,0x12,0x90,0x0B,0xFF,0x90,0x08,0x40,0x90,0x08,0x7C,0x70,
0x78,0xC4,0x60,0x18,0x84,0x60,0x18,0x84,0x60,0x19,0x8C,0x90,0x19,0x79,0x0C,0x1A,
0x12,0x0E,0x04,0x0C,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x04,0x10,0x40,0x02,
0x10,0x60,0x03,0x10,0xE0,0x01,0x90,0xC0,0x01,0x90,0x80,0x00,0x11,0x00,0x00,0x12,
0x0C,0x3F,0xFF,0xFE,0x00,0xC2,0x00,0x00,0xC2,0x00,0x00,0xC2,0x00,0x00,0x82,0x00,
0x00,0x82,0x04,0x01,0x82,0x04,0x01,0x02,0x04,0x03,0x02,0x04,0x06,0x02,0x06,0x08,
0x03,0xFE,0x30,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x83,0x00,0x00,0xC3,0x00,0x00,0xC2,0x10,0x3F,
0xFF,0xF8,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x40,0x07,0xFF,0xE0,0x00,0x10,
0x00,0x00,0x10,0x08,0x3F,0xFF,0xFC,0x00,0x10,0x00,0x00,0x10,0x10,0x3F,0xFF,0xF8,
0x00,0x38,0x00,0x00,0x34,0x00,0x00,0x62,0x00,0x00,0xC1,0x00,0x01,0x80,0xC0,0x03,
0x00,0x7E,0x0C,0x00,0x18,0x70,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x18,0x00,0x00,0x08,0x08,0x1F,
0xFF,0xFC,0x10,0x80,0x10,0x30,0xC1,0x20,0x01,0x98,0xC0,0x02,0x18,0x70,0x04,0x38,
0x30,0x18,0x64,0x10,0x00,0xC2,0x00,0x01,0x81,0x80,0x03,0x00,0xE0,0x07,0x00,0xBE,
0x09,0xFF,0xDC,0x31,0x00,0x80,0x01,0x00,0x80,0x01,0x00,0x80,0x01,0x00,0x80,0x01,
0xFF,0x80,0x01,0x00,0x80,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x10,0x60,0x06,0x18,0x40,0x06,0x08,0x88,0x06,
0xFF,0xFC,0x0E,0x02,0x00,0x0C,0x02,0x20,0x0C,0x3F,0xF0,0x18,0x02,0x04,0x19,0xFF,
0xFE,0x28,0x05,0x40,0x48,0x1D,0xB0,0x48,0xF1,0x90,0x08,0x11,0x84,0x09,0xFF,0xFE,
0x08,0x10,0x90,0x08,0x1C,0x98,0x08,0xF0,0xB0,0x09,0x90,0xE2,0x08,0x10,0x64,0x08,
0x30,0xB4,0x0C,0xE3,0x1E,0x00,0x04,0x00,
};

uchar code ZKmggls[]={
0x08,0x20,0x04,0x40,0x7F,0xFC,0x01,0x00,0x1F,0xF8,0x01,0x00,0x01,0x00,0x7F,0xFE,
0x01,0x00,0x01,0x00,0x3F,0xFC,0x02,0x80,0x04,0x40,0x08,0x30,0x30,0x1C,0xC0,0x08,
0x7F,0xFC,0x40,0x84,0x40,0xA4,0x40,0xA4,0x5F,0xF4,0x40,0x84,0x5E,0xA4,0x52,0xB4,
0x5E,0x64,0x40,0x44,0x46,0xD4,0x59,0x54,0x42,0x24,0x40,0x04,0x7F,0xFC,0x40,0x04,
0x10,0x80,0x10,0x80,0x11,0xF8,0xFD,0x08,0x12,0x90,0x34,0x50,0x38,0x20,0x54,0x50,
0x57,0x8E,0x91,0xF8,0x11,0x08,0x11,0x08,0x11,0x08,0x11,0x08,0x11,0xF8,0x11,0x08,
0x1F,0xF8,0x01,0x00,0x7F,0xFE,0x41,0x04,0x1D,0x70,0x01,0x00,0x1D,0x70,0x01,0x00,
0x3F,0xF8,0x21,0x08,0x21,0x08,0x3F,0xF8,0x21,0x08,0x21,0x08,0x3F,0xF8,0x20,0x08,
0x22,0x0C,0x22,0x70,0xFF,0x40,0x22,0x40,0x3E,0x40,0x22,0x7E,0x22,0x48,0x3E,0x48,
0x22,0x48,0x22,0x48,0xFF,0x48,0x00,0x48,0x24,0x88,0x62,0x88,0x83,0x08,0x00,0x08,

};

uchar code ZKguohao[]={
0x00,0x02,0x04,0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x08,0x08,0x04,0x02,0x00,
0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,0x00,
};

uchar code ZKzhuhai[]={
0x00,0x20,0xF9,0x20,0x21,0x28,0x21,0xFC,0x21,0x20,0x22,0x20,0xF8,0x20,0x27,0xFE,
0x20,0x70,0x20,0xA8,0x38,0xA8,0xC1,0x24,0x02,0x26,0x04,0x24,0x08,0x20,0x00,0x20,
0x21,0x00,0x11,0x00,0x11,0xFE,0x02,0x00,0x97,0xF8,0x52,0x88,0x52,0x48,0x12,0x08,
0x2F,0xFE,0x22,0x88,0xE2,0x48,0x22,0x08,0x23,0xFE,0x20,0x08,0x20,0x28,0x20,0x10,
};

uchar code ZKkjsy[]={
0x06,0x08,0x78,0x88,0x08,0x48,0x08,0x48,0xFE,0x08,0x18,0x88,0x1C,0x48,0x2A,0x48,
0x28,0x0E,0x48,0x78,0x8B,0x88,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
0x10,0x20,0x10,0x20,0x10,0x20,0xFD,0xFE,0x10,0x20,0x14,0x20,0x19,0xFC,0x31,0x08,
0xD0,0x88,0x10,0x90,0x10,0x60,0x10,0x60,0x10,0x90,0x11,0x0E,0x56,0x04,0x20,0x00,
0x02,0x00,0x7F,0xFE,0x40,0x04,0x9F,0xE8,0x12,0x20,0x7F,0xF8,0x11,0x20,0x1F,0xE0,
0x00,0x00,0x1F,0xE0,0x15,0x20,0x12,0xA0,0x10,0x20,0x1F,0xE0,0x0C,0xC0,0x30,0x30,
0x02,0x40,0x12,0x48,0x0A,0x50,0xFF,0xFE,0x08,0x40,0x04,0x80,0x7F,0xF8,0x01,0x00,
0x1F,0xF0,0x01,0x00,0x7F,0xFE,0x03,0x40,0x05,0x20,0x19,0x18,0x61,0x0E,0x01,0x04,
0x01,0x00,0x01,0x00,0x7F,0xFE,0x02,0x00,0x04,0x00,0x0F,0xF0,0x18,0x10,0x28,0x10,
0x4F,0xF0,0x88,0x10,0x08,0x10,0x0F,0xF0,0x08,0x10,0x08,0x90,0x08,0x70,0x08,0x20,
0x00,0x00,0xFB,0xF8,0x92,0x08,0x93,0xF8,0xA2,0x08,0xA2,0x08,0x93,0xF8,0x8A,0x80,
0x8A,0x48,0xAA,0x50,0x92,0x20,0x82,0x20,0x82,0x10,0x82,0x8E,0x83,0x04,0x82,0x00,
0x00,0x00,0x04,0x40,0x06,0x40,0x04,0x40,0x08,0x20,0x08,0x10,0x10,0x18,0x22,0x0E,
0x43,0x04,0x02,0x00,0x04,0x20,0x08,0x10,0x11,0xF8,0x3F,0x18,0x10,0x10,0x00,0x00,
0x00,0x00,0x3F,0xFC,0x00,0x04,0x00,0x04,0x7F,0xE4,0x00,0x04,0x00,0x04,0x3F,0xC4,
0x20,0x44,0x20,0x44,0x3F,0xC4,0x20,0x44,0x20,0x04,0x00,0x14,0x00,0x08,0x00,0x00,
};

uchar code ZKcarise_int[]={
0x00,0x00,0x00,0xE7,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
0x00,0x00,0x00,0x3E,0x42,0x42,0x40,0x20,0x18,0x04,0x02,0x42,0x42,0x7C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
0x00,0x00,0x00,0x10,0x10,0x18,0x28,0x28,0x24,0x3C,0x44,0x42,0x42,0xE7,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
0x00,0x02,0x04,0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x08,0x08,0x04,0x02,0x00,
0x00,0x00,0x00,0x7E,0x84,0x04,0x08,0x08,0x10,0x20,0x20,0x42,0x42,0xFC,0x00,0x00,
0x00,0x00,0x00,0xC0,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC6,0x42,0x42,0x42,0x42,0x46,0x3B,0x00,0x00,
0x00,0x00,0x00,0xC0,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x1E,0x22,0x42,0x42,0x3F,0x00,0x00,
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3E,0x42,0x42,0x80,0x80,0x80,0x80,0x80,0x42,0x44,0x38,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x1E,0x22,0x42,0x42,0x3F,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEE,0x32,0x20,0x20,0x20,0x20,0xF8,0x00,0x00,
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x42,0x40,0x3C,0x02,0x42,0x7C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x7E,0x40,0x40,0x42,0x3C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3E,0x42,0x42,0x40,0x20,0x18,0x04,0x02,0x42,0x42,0x7C,0x00,0x00,
0x00,0x00,0x00,0x30,0x48,0x48,0x48,0x50,0x6E,0xA4,0x94,0x88,0x89,0x76,0x00,0x00,
0x00,0x00,0x00,0xFE,0x92,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xDC,0x62,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x22,0x40,0x40,0x40,0x22,0x1C,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
};

uchar code ZKno_full[]={
0x20,0x20,0x13,0xFE,0xFC,0x20,0x01,0xFC,0x78,0x20,0x03,0xFE,0x00,0x00,0x79,0xFC,
0x01,0x04,0x79,0xFC,0x49,0x04,0x49,0xFC,0x49,0x04,0x79,0x04,0x49,0x14,0x01,0x08,
0x10,0x20,0x10,0x20,0xFE,0x50,0x10,0x88,0x7D,0xF6,0x56,0x00,0x7D,0xC4,0x55,0x54,
0x55,0xD4,0x7D,0x54,0x11,0x54,0xFD,0xD4,0x11,0x54,0x11,0x44,0x11,0x54,0x11,0x48,
0x0C,0x00,0x06,0x00,0x02,0x00,0x01,0x00,0x03,0x00,0x02,0x80,0x02,0x80,0x04,0x40,
0x04,0x20,0x08,0x20,0x08,0x10,0x10,0x08,0x20,0x0E,0x40,0x04,0x80,0x00,0x00,0x00,
0x04,0x00,0x03,0x00,0x01,0x80,0x01,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x04,0x80,
0x06,0x40,0x04,0x20,0x08,0x10,0x08,0x18,0x10,0x0C,0x20,0x0C,0x40,0x08,0x00,0x00,
0x09,0x00,0x0C,0xC0,0x10,0x40,0x17,0xFC,0x20,0x00,0x34,0x10,0x52,0x18,0x52,0x10,
0x91,0x10,0x11,0x20,0x11,0x20,0x10,0x20,0x10,0x40,0x1F,0xFE,0x10,0x00,0x00,0x00,
0x10,0x80,0x10,0x80,0x20,0x80,0x7C,0xFC,0x45,0x04,0x45,0x04,0x46,0x04,0x7C,0x84,
0x44,0x44,0x44,0x64,0x44,0x24,0x44,0x04,0x7C,0x04,0x44,0x28,0x40,0x10,0x00,0x00,
0x02,0x00,0x01,0x00,0x3F,0xFE,0x42,0x24,0x49,0x50,0x29,0x48,0x48,0xA4,0x0B,0x34,
0x1F,0xE0,0xE0,0x00,0x41,0x00,0x11,0x08,0x11,0x08,0x11,0x08,0x1F,0xF8,0x00,0x00,
0x00,0x00,0xFD,0xFE,0x11,0x20,0x11,0xFC,0x21,0x20,0x21,0xFC,0x7D,0x20,0x65,0x20,
0xA5,0xFE,0x24,0x02,0x25,0x52,0x3D,0x4A,0x25,0x2A,0x22,0x22,0x00,0x14,0x00,0x08,};

uchar code ZKPswErr[]={
0x02,0x00,0x01,0x00,0x3F,0xFE,0x42,0x24,0x49,0x50,0x29,0x48,0x48,0xA4,0x0B,0x34,
0x1F,0xE0,0xE0,0x00,0x41,0x00,0x11,0x08,0x11,0x08,0x11,0x08,0x1F,0xF8,0x00,0x00,
0x00,0x00,0xFD,0xFE,0x11,0x20,0x11,0xFC,0x21,0x20,0x21,0xFC,0x7D,0x20,0x65,0x20,
0xA5,0xFE,0x24,0x02,0x25,0x52,0x3D,0x4A,0x25,0x2A,0x22,0x22,0x00,0x14,0x00,0x08,
0x10,0x88,0x10,0x88,0x28,0x88,0x25,0xFE,0x40,0x88,0x7C,0x88,0x93,0xFE,0x7C,0x00,
0x11,0xFC,0x95,0x04,0x55,0x04,0x59,0xFC,0x11,0x04,0x1D,0x04,0xE1,0xFC,0x01,0x04,
0x20,0x00,0x11,0xF8,0xFD,0x08,0x01,0x08,0x01,0xF8,0x78,0x00,0x03,0xFC,0x78,0x40,
0x00,0x40,0x7F,0xFE,0x48,0x40,0x48,0xA0,0x48,0x90,0x79,0x0C,0x4A,0x06,0x04,0x04,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,
0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,
0x20,0x20,0x13,0xFE,0xFC,0x20,0x01,0xFC,0x78,0x20,0x03,0xFE,0x00,0x00,0x79,0xFC,
0x01,0x04,0x79,0xFC,0x49,0x04,0x49,0xFC,0x49,0x04,0x79,0x04,0x49,0x14,0x01,0x08,
0x01,0xF0,0x3F,0x00,0x01,0x00,0xFF,0xFE,0x01,0x00,0x1F,0xF0,0x11,0x10,0x1F,0xF0,
0x11,0x10,0x1F,0xF0,0x01,0x00,0x3F,0xF8,0x01,0x00,0x01,0x00,0xFF,0xFE,0x00,0x00,
0x10,0x00,0x08,0x0E,0x7F,0x70,0x22,0x40,0x14,0x40,0xFF,0x7E,0x08,0x48,0x08,0x48,
0xFF,0x48,0x08,0x48,0x2C,0x48,0x2A,0x88,0x4A,0x88,0x89,0x08,0x2A,0x08,0x10,0x08,
0x10,0x20,0x10,0x20,0xFE,0x50,0x10,0x88,0x7D,0xF6,0x56,0x00,0x7D,0xC4,0x55,0x54,
0x55,0xD4,0x7D,0x54,0x11,0x54,0xFD,0xD4,0x11,0x54,0x11,0x44,0x11,0x54,0x11,0x48,
0x0C,0x00,0x06,0x00,0x02,0x00,0x01,0x00,0x03,0x00,0x02,0x80,0x02,0x80,0x04,0x40,
0x04,0x20,0x08,0x20,0x08,0x10,0x10,0x08,0x20,0x0E,0x40,0x04,0x80,0x00,0x00,0x00,

};

uchar code ZKnone[]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

uchar code LCD_set[]={
0x30,0x87,0x07,39,0x40,240,40,0
};
uchar code LCD_scroll[]={
0,0,240,0x80,0x25,240,0,0x4b
};
      
void Initialize(void);                                           //LCD初始化
void delay(uint);                                                //延时
void SetCursor(uchar,uchar);                                     //LCD定位子程序
void WriteWork(uchar,uchar,uchar *,uchar,uint,uchar,uchar);   //LCD显示子程序
void Clear_display(void);                                                 //清屏子程序
void TurnOnWork(void);                 //开机子程序,输和密码功能
void Working(void);                    //工作界面
void Chang_display(void);              //更换界面准备工作
void Clear_pswstar(void);                  //输入密码出错时清除星符号
void PSW_num(uchar);              //键盘输密码子程序
void Work_num(uchar);             //键盘工作子程序
void Clear_Warning(void);          //重新输密码时清除警告函数
void format_mcu(void);                   //格式化单片机
uchar Key(void);                       //键盘对应编码返回函数
uchar Key_check(void);                 //键盘扫描子函数
void init_24c02(void);                  //IIC总线初始化.在MAIN()函数中首先调用本函数
void start(void);                      // IIC启动函数
void stop(void);                        // IIC结束函数
bit  clock(void);                      //IIC时钟信号
bit send(uchar);                       //IIC发送八位数据函数
bit send_address(uchar);               //发送2402地址与指定字节地址
bit read_byte(uchar,uchar);            //连续读取数据,第一个参数为字节首地址,二为字节数
bit write_byte(uchar,uchar);           //连续写入数据,第一个参数为字节首地址,二为字节数
void ack();                            //IIC应答函数
uchar rd_24c02(void);                  //IIC连续
void delay1(void);

sbit LCD_reset=P1^2;               //LCD复位腿
sbit clk=P1^6;                     //发PWM腿
sbit scl_IC=P1^0;                     //IIC时钟线
sbit sda_IC=P1^1;                     //IIC数据线
bit Bit_key;                      //键盘扫描标标位
bit not_full;                     //密码位数不够标志位
bit PswErr;                        //密码错误标志位
bit PswDisplay;                    //输密码键盘扫描标志位
uchar bdata  send_data;
sbit hit_bit=send_data^7;
sbit low_bit=send_data^0;
uchar data Timer0Num_0;                 //软件定时器参数0
uchar data Timer0Num_1;                 //软件定时器参数1
uchar data num;                         //输入密码的位数
uchar data Pswnum[6];                   //密码数组
uchar data Pswnum_buff[6];              //密码缓冲池
uchar data output;
uchar data num_and;
//uchar read_buff[6];

void main(void)
{

       uchar Key_num;
//       uchar i;
       SP=0XD0;
       delay(500);
       format_mcu();
       while(1)
       {
         if(_testbit_(Bit_key))
          {
             if(PswDisplay)
                {
                switch(Key_num=Key())
                   {
                    case 0x33: PSW_num(3);break; //s9
                    case 0x63: PSW_num(2);break; //s3
                    case 0x91: PSW_num(1);break; //s8
                    case 0xA2: PSW_num(6);break; //s2
                    case 0xC1: PSW_num(5);break; //s1
                    case 0xA0: PSW_num(4);break; //s7
                    case 0x53: PSW_num(9);break; //s6
                    case 0x51: PSW_num(8);break; //s11
                    case 0x32: PSW_num(7);break; //s12
                    case 0xC0: PSW_num(10);break; //取消键 s4
                    case 0x92: PSW_num(0);break;  //s5
                    case 0x60: PSW_num(11);break;  //确定键  s10
                    default:   break;
                   }
                 }


         }
     }
}



/******************************************************************************************
*
*
*           IIc处理程序

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -