/******************************************************
程序名称:LCD12864驱动程序
程序说明:控制LCD显示数字、汉字及图片
控 制 器:STC12C5A60S2
编 制 人:wildgg
编制日期:
*******************************************************/
/*----宏定义----*/
#define uchar unsigned char //用“uchar”替代“unsigned char”
#define uint unsigned int //用“uint”替代“unsigned int”
/*----定义常量----*/
#define Disp_On 0x3f //开显示
#define Disp_Off 0x3e //关显示
#define Col_Str 0x40 //列起始地址 共64列(0-63)
#define Page_Str 0xb8 //页起始地址 共7页(0-7)
#define Line_Str 0xc0 //行起始地址 共64行(0-63)
#define Lcd_Bus P0 //定义LCD12864的数据总线
/*----定义控制字I/O----*/
sbit Leds_CE=P4^4; //Leds使能控制,高电平有效
sbit Led_CS =P2^6; //LED使能控制,0:允许写入数据,0->1:锁存数据
sbit Lcd_RS =P2^0; //
sbit Lcd_RW =P2^1; //RS:RW=(00:写命令;01:读状态;10:写数据;11:读数据)
sbit Lcd_EN =P2^2; //读写使能 1:锁存数据缓存;1->0:数据缓存->数据寄存器
sbit Lcd_CS1=P2^3; //左半屏使能,高电平有效
sbit Lcd_CS2=P2^4; //右半屏使能,高电平有效
/*----定义字库----*/
uchar code ch[]= //ASCII字符16*8:列行式;共阴码;低位前,高位后
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,/*"0",1*/
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*"1",2*/
0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/*"2",3*/
0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,/*"3",4*/
0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*"4",5*/
0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*"5",6*/
0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,/*"6",7*/
0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,/*"7",8*/
0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,/*"8",9*/
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,/*"9",10*/
0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20,/*"A",11*/
0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x11,0x0E,0x00,/*"B",12*/
0xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00,/*"C",13*/
0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00,/*"D",14*/
0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00,/*"E",15*/
0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x00,0x03,0x00,0x00,0x00,/*"F",16*/
0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00,/*"*",17*/
0x40,0xC0,0x78,0x40,0xC0,0x78,0x40,0x00,0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00,/*"#",18*/
0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00,/*"U",19*/
0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x00,/*"L",20*/
0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00,/*"O",21*/
0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20,/*"R",22*/
0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00,/*"D",23*/
};
/*----定义16*16汉字字库----*/
uchar code hz1[]= //宋体16*16:列行式;共阴码;低位前,高位后
{
0x20,0x30,0xAC,0x63,0x20,0x18,0x00,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0x00,0x00,
0x22,0x67,0x22,0x12,0x12,0x12,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x00,/*"红",0*/
0x00,0xC0,0x30,0x1F,0x10,0x10,0xF0,0x00,0x00,0xFF,0x20,0x40,0x80,0x00,0x00,0x00,
0x81,0x40,0x21,0x12,0x0C,0x03,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x03,0x00,0x00,/*"外",1*/
0x00,0xFC,0x00,0x00,0xFF,0x00,0x40,0x20,0xD8,0x17,0x10,0x10,0xF0,0x10,0x10,0x00,
0x00,0x0F,0x04,0x02,0xFF,0x00,0x80,0x40,0x21,0x16,0x08,0x16,0x21,0x40,0x80,0x00,/*"收",2*/
0x00,0x00,0x18,0x16,0x10,0xD0,0xB8,0x97,0x90,0x90,0x90,0x92,0x94,0x10,0x00,0x00,
0x00,0x20,0x10,0x8C,0x83,0x80,0x41,0x46,0x28,0x10,0x28,0x44,0x43,0x80,0x80,0x00,/*"发",3*/
0x10,0x60,0x02,0x8C,0x00,0xFE,0x02,0xF2,0x02,0xFE,0x00,0xF8,0x00,0xFF,0x00,0x00,
0x04,0x04,0x7E,0x01,0x80,0x47,0x30,0x0F,0x10,0x27,0x00,0x47,0x80,0x7F,0x00,0x00,/*"测",4*/
0x40,0x40,0x42,0xCC,0x00,0x90,0x90,0x90,0x90,0x90,0xFF,0x10,0x11,0x16,0x10,0x00,
0x00,0x00,0x00,0x3F,0x10,0x28,0x60,0x3F,0x10,0x10,0x01,0x0E,0x30,0x40,0xF0,0x00,/*"试",5*/
0x24,0x24,0xA4,0xFE,0x23,0x22,0x00,0x3E,0x22,0x22,0x22,0x22,0x22,0x3E,0x00,0x00,
0x08,0x06,0x01,0xFF,0x01,0x06,0x40,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x41,0x00,/*"程",6*/
0x00,0x00,0xFC,0x04,0x04,0x04,0x14,0x15,0x56,0x94,0x54,0x34,0x14,0x04,0x04,0x00,
0x40,0x30,0x0F,0x00,0x01,0x01,0x01,0x41,0x81,0x7F,0x01,0x01,0x01,0x05,0x03,0x00,/*"序",7*/
};
/*----定义16*16汉字字库----*/
uchar code hz2[]= //宋体16*16:列行式;共阴码;低位前,高位后
{
0x20,0x20,0x20,0xFF,0x20,0x20,0x80,0xF8,0x80,0x40,0xFF,0x20,0x10,0xF0,0x00,0x00,
0x10,0x30,0x10,0x0F,0x08,0x08,0x00,0x3F,0x40,0x40,0x5F,0x42,0x44,0x43,0x78,0x00,/*"地",0*/
0x20,0x20,0x20,0xFF,0x20,0x20,0x00,0xF8,0x00,0x00,0xFF,0x40,0x40,0x40,0x00,0x00,
0x10,0x30,0x10,0x0F,0x08,0x48,0x40,0x7F,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x00,/*"址",1*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*":",2*/
};
/*----定义16*16汉字字库----*/
uchar code hz3[]= //宋体16*16:列行式;共阴码;低位前,高位后
{
0x40,0x40,0x20,0x20,0x10,0x28,0x24,0x23,0x24,0x28,0x10,0x20,0x20,0x40,0x40,0x00,
0x00,0x00,0x3F,0x11,0x11,0x11,0x3F,0x00,0xFF,0x01,0x11,0x21,0x1F,0x00,0x00,0x00,/*"命",0*/
0x80,0x80,0x40,0x20,0x10,0x08,0x14,0x63,0x04,0x08,0x10,0x20,0x40,0x80,0x80,0x00,
0x00,0x00,0x00,0x01,0x01,0x09,0x11,0x21,0xD1,0x09,0x05,0x03,0x00,0x00,0x00,0x00,/*"令",1*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*":",2*/
};
/*----定义16*16汉字字库----*/
uchar code hz4[]= //宋体16*16:列行式;共阴码;低位前,高位后
{
0x40,0x30,0xEF,0x24,0x24,0x80,0xE4,0x9C,0x10,0x54,0x54,0xFF,0x54,0x7C,0x10,0x00,
0x01,0x01,0x7F,0x21,0x51,0x26,0x18,0x27,0x44,0x45,0x45,0x5F,0x45,0x45,0x44,0x00,/*"键",0*/
0x00,0x80,0x60,0xF8,0x07,0x04,0xE4,0xA4,0xA4,0xBF,0xA4,0xA4,0xE4,0x04,0x00,0x00,
0x01,0x00,0x00,0xFF,0x40,0x40,0x7F,0x4A,0x4A,0x4A,0x4A,0x4A,0x7F,0x40,0x40,0x00,/*"值",1*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*":",2*/
};
/*----函数声明----*/
void Delay10us(uint a); //延时a*10us@6T,11.0592Mhz
void Delayms(uint a); //延时a*1ms@6T,11.0592Mhz
uchar Ex_byt(uchar dat); //字节高低位互换
void Init_lcd(void); //初始化
void Clr_lcd(void); //清屏
void Ck_lcd(); //LCD“忙”检查程序
void Wr_lcd_cmd(uchar cmd); //写命令
void Wr_lcd_dat(uchar dat); //写数据;
void Disp_ch(uchar pag,uchar col,uchar *ch); //在指定位置开始显示8*16字符
void Disp_hz(uchar pag,uchar col, uchar *hz); //在指定位置开始显示16*16字符
/*----初始化LCD屏----
功能:LCD初始化配置
入口参数:无
出口参数:无
说明: */
void Init_lcd(void)
{
Led_CS=1; //关闭LED
Leds_CE=0; //关闭Leds
Clr_lcd();
Wr_lcd_cmd(Disp_Off); //关显示
Wr_lcd_cmd(Page_Str); //设置起始页
Wr_lcd_cmd(Col_Str); //设置起始列
Wr_lcd_cmd(Line_Str); //设置起始行
Wr_lcd_cmd(Disp_On); //开显示
}
/*----清LCD屏----
功能:LCD清除显示
入口参数:无
出口参数:无
说明: */
void Clr_lcd(void)
{
uchar i,j;
Lcd_CS1=1;Lcd_CS2=1;
Ck_lcd();
for(i=0;i<8;i++)
for(j=0;j<64;j+
没有合适的资源?快使用搜索试试~ 我知道了~
红外收发传感器程序.zip
共14个文件
c:2个
bak:2个
obj:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 52 浏览量
2021-12-19
20:38:07
上传
评论
收藏 37KB ZIP 举报
温馨提示
红外收发传感器程序.zip
资源推荐
资源详情
资源评论
收起资源包目录
红外收发传感器程序.zip (14个子文件)
红外收发传感器程序
实验9 红外收发传感器实验
HX1838_Opt.Bak 1KB
HX1838.lnp 29B
HX1838.plg 341B
HX1838.M51 16KB
HX1838.LST 10KB
HX1838.c 4KB
LCD12864.c 10KB
HX1838_Uv2.Bak 2KB
HX1838.OBJ 17KB
HX1838.Opt 847B
HX1838.Uv2 2KB
HX1838 14KB
STC12C5A60S2.H 17KB
HX1838.hex 6KB
共 14 条
- 1
资源评论
mYlEaVeiSmVp
- 粉丝: 1923
- 资源: 19万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功