![12232液晶汉字图形显示程序_第1页](http://file3.renrendoc.com/fileroot_temp3/2021-12/24/bf390867-1eef-4aad-842d-1e42028dc316/bf390867-1eef-4aad-842d-1e42028dc3161.gif)
![12232液晶汉字图形显示程序_第2页](http://file3.renrendoc.com/fileroot_temp3/2021-12/24/bf390867-1eef-4aad-842d-1e42028dc316/bf390867-1eef-4aad-842d-1e42028dc3162.gif)
![12232液晶汉字图形显示程序_第3页](http://file3.renrendoc.com/fileroot_temp3/2021-12/24/bf390867-1eef-4aad-842d-1e42028dc316/bf390867-1eef-4aad-842d-1e42028dc3163.gif)
![12232液晶汉字图形显示程序_第4页](http://file3.renrendoc.com/fileroot_temp3/2021-12/24/bf390867-1eef-4aad-842d-1e42028dc316/bf390867-1eef-4aad-842d-1e42028dc3164.gif)
![12232液晶汉字图形显示程序_第5页](http://file3.renrendoc.com/fileroot_temp3/2021-12/24/bf390867-1eef-4aad-842d-1e42028dc316/bf390867-1eef-4aad-842d-1e42028dc3165.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、12232液晶汉字图形显示程序时间:2006-08-08 来源: 作者: 点击:4879字体大小:【大 中小§创创遵& 硬件:TG12232B( 122*32 )模拟口线接线方式连接线图:I|DB0-P0.0 | DB4-P0.4 | RW-P1.1 | A0-P1.0 |DB1-P0.1 | DB5-P0.5 | RS-P2.1 | V0接1K电阻到GND |DB2-P0.2 | DB6-P0.6 | E1 -P1.3 |DB3-P0.3 | DB7-P0.7 | E2-P1.2 |注:AT89X52 使用22.1184M 或11.0592M 晶振,实测使用 22.1184
2、M 或11.0592都可以 编译平台:Keil uV2 7.08/可能看起来有点乱,不过效果还是不错的,显示图形总的来说比显示汉字要简单,当然显示汉字也不难。希望此程序能给你一些帮助。=*/#i nclude <AT89X52.H>#defi ne uchar un sig ned char#defi ne uint un sig ned int#defi ne E1 P1_3 / 块 1 左边#define E2 P1_2 / 块 2 右边#defi ne RW P1_1#define A0 P1_0 A0为1时是数据,0时为指令数据#defi ne DATA P0 / 数据ex
3、ter n un sig ned char code Bmpt1;exter n un sig ned char code Bmpt2;exter n un sig ned char code Bmpt3;exter n un sig ned char code Bmpt4; exter n un sig ned char code Bmpt5; exter n un sig ned char code Bmpt6; exter n un sig ned char code Bmpt7; exter n un sig ned char code Bmptc; exter n un sig ne
4、d char code bmp001; exter n un sig ned char code Bmp08; exter n un sig ned char code Bmp07; exter n un sig ned char code Bmp06; exter n un sig ned char code Bmp05; exter n un sig ned char code Bmp04; exter n un sig ned char code Bmp03; exter n un sig ned char code Bmp02; exter n un sig ned char code
5、 Bmp01;exter n un sig ned char code Bmp012; exter n un sig ned char code Bmp003; exter n un sig ned char code Bmp002;/延时void delay (un sig ned int i)un sig ned char k=200;while(i>0)i-;while(k>1)k-;/左页II发送数据void OUTMD(u nsig ned char i)A0=1; II写数据IIdelay(5);E1=1;delay(10);DATA=i;delay(5);E1=0;/
6、左页/发送命令void OUTMI(u nsig ned char i)A0=0; /写指令delay(5);E1=1;delay(10);DATA=i;delay(5);E1=0;/右页II发送数据void OUTSD(u nsig ned char i)A0=1; II写数据IIdelay(5);E2=1;IIdelay(10);DATA=i;IIdelay(5);E2=0;II右页II发送命令void OUTSI(u nsig ned char i)A0=0; II写指令delay(5);E2=1;delay(10);DATA=i;delay(5);E2=0;/初始化void lcdin
7、i( void)RW=0;OUTMI(OXE2);OUTSI(OXE2); 复位OUTMI(0XAE);OUTSI(OXAE);/POWER SAVEOUTMI(0XA4);OUTSI(0XA4);/ 动态驱动OUTMI(0XA9);OUTSI(0XA9);/1/32 占空比OUTMI(OXAO);OUTSI(OXAO);/时钟线输出OUTMI(0XEE);OUTSI(0XEE);/ 写模式OUTMI(OXOO);OUTMI(OXCO);OUTSI(0X00);OUTSI(0XC0);OUTMI(0XAF);OUTSI(OXAF);/*函数说明:同时设置主从显示页为0 3页。(内函数,私有,用
8、户不直接调用)*/void SetPage(uchar pageO,uchar pagel)OUTMI(OxB8|page1);OUTSI(OxB8|pageO);/*函数说明:同时设置主从列地址为0 121。(内函数,私有,用户不直接调用)*/void SetAddress(uchar address0,uchar address" OUTMI(address1);OUTSI(address0);/*调用方式:void PutChar0(uchar ch)函数说明:在右页当前地址画一个字节8个点。(内函数,私有,用户不直接调用)-*/void PutCharR(uchar ch)
9、OUTSD(ch);/*调用方式:void PutChar1(uchar ch)函数说明:在左页当前地址画一个字节8个点。(内函数,私有,用户不直接调用)-*/void PutCharL(uchar ch)OUTMD(ch);/*调用方式: void DrawBmp(bit layer,uchar width,uchar *bmp)函数说明:画一个图,layer表示上下层,width是图形的宽,高都是 16 , bmp是 图形指针使用zimo3软件,纵向取模,字节倒序/240字节-*/void DrawBmp(bit layer,uchar width,uchar *bmp)uchar x,a
10、ddress,i=O; /address表示显存的物理地址uchar page=0; /page表示上下两页bit win dow=0; /window表示左右两页/putcharR / 右边/putcharL / 左边for (x=width;x>1;x-)if (i>60) wi ndow=1;address=i%61;else address=i;if(layer=0) / 显示一行八个字SetPage(0,0);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi);else PutCharL(bmpi);SetPag
11、e(1,1);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi+width);else PutCharL(bmpi+width);else /显示第二行八个汉字SetPage(2,2);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi);else PutCharL(bmpi);SetPage(3,3);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi+width); else PutCharL(bmpi+width)
12、;i+;/*调用方式:void clrscr(void)函数说明:清屏-*/void clrscr(void)uchar i;uchar page;for (page=0;page<4;page+)SetPage(page,page);SetAddress(0,0);for (i=0;i<61;i+)PutCharR(0);PutCharL(0);/图片显示II采用字模2生成或字模3生成的都可以/void DrawBmp1( uint x_add, uchar width,uchar *bmp)uchar x,address,i=O; /address表示显存的物理地址uchar
13、page=0; /page 表示上下两页bit win dow=0; /window表示左右两页/putcharR / 右边/putcharL / 左边for (x=width;x>1;x-)if (x_add>60) wi ndow=1;address=x_add%61;else address=x_add;SetPage(0,0);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi);else PutCharL(bmpi);SetPage(1,1);SetAddress(address,address);if(wi nd
14、ow=1)PutCharR(bmpi+width);else PutCharL(bmpi+width);SetPage(2,2);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi+width+width);else PutCharL(bmpi+width+width);SetPage(3,3);SetAddress(address,address);if(wi ndow=1)PutCharR(bmpi+width+width+width);else PutCharL(bmpi+width+width+width);i+;x_add+;
15、/II采用zimo2显示汉字,以汉字的显示方式/void Draw_word(uchar d_where ,uint x_add,bit layer,uchar width)d_where表示在码表中第几个汉字,x_add横坐标位置,layer显示的层,width显示的宽度。/void Draw_word(uchar d_where ,uint x_add,bit layer,uchar width)uchar x,i=O,address; /address表示显存的物理地址uchar page=0; /page表示上下两页bit win dow=0; /window表示左右两页/putcha
16、rR / 右边/putcharL / 左边d_where=d_where*32;for (x=width;x>1;x-)if (x_add>60) wi ndow=1;address=x_add%61;else address=x_add;if(layer=0) /显示一行八个字SetPage(0,0);SetAddress(address,address);if(wi ndow=1)PutCharR(bmp001d_where);右边else PutCharL(bmp001d_where);左边SetPage(1,1);SetAddress(address,address);if
17、(wi ndow=1)PutCharR(bmp001d_where+width);else PutCharL(bmp001d_where+width);else /显示第二行八个汉字SetPage(2,2);SetAddress(address,address);if(wi ndow=1)PutCharR(bmp001d_where);右边else PutCharL(bmpOO1d_where);左边SetPage(3,3);SetAddress(address,address);if(wi ndow=1)PutCharR(bmp001d_where+width);else PutCharL(
18、bmpOO1d_where+width);x_add+;d_where+;/*/字模2显示一个汉字/纵向取模,字节倒序void disp_ on e(bit top_low,bit widows,uchar address,uchar width,uchar*bmp) if(top_low=0)SetPage(0,0);SetAddress(address,address);if(win dow=1)PutCharR(bmp001 nexti);else PutCharL(bmp001 nexti);SetPage(1,1);SetAddress(address,address);if(wi
19、ndow=1)PutCharR(bmp001 nexti+width);else PutCharL(bmp001 nexti+width);elseSetPage(0,0);SetAddress(address,address);if(win dow=1)PutCharR(bmp001 nexti);else PutCharL(bmp001 nexti);SetPage(1,1);SetAddress(address,address);if(wi ndow=1)PutCharR(bmp001 nexti+width); else PutCharL(bmpOO1 nexti+width);*/液
20、晶显示规则/ M(左)S(右)/ page page/ 0 | 0/ 1 | 1/ 2 | 2/ 3 | 3void delay1s( un sig ned char i)while(i>1)i-;delay(65530);/显示动态的等待图标void wait1( un sig ned char i)for(;i>1;i-)delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); /DrawBmp1(76,19,Bmpt1); /delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); /DrawBmp1(76,19,B
21、mpt2); /delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); / DrawBmp1(76,19,Bmpt3); / delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); / DrawBmp1(76,19,Bmpt4); / delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); / DrawBmp1(76,19,Bmpt5); / delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); / DrawBmp1(76,19,Bmpt6); / delay1s(2);clrscr(); /DrawBmp1(0,60,Bmptc); / DrawBmp1(76,19,Bmpt7); / /演示程序void mai n()lcdi ni (); /rese
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2031年中国万能磨刀机行业市场调查研究及发展趋势预测报告
- 中国无励磁刹车项目投资可行性研究报告
- 动迁房售房合同范本
- 个体全包装修合同范本
- 公关传播合同范本
- 出售山地林地合同范本
- 2025年度建筑工程资质借用及工程保险合同范本
- 2019-2025年中国汽车销售行业发展前景预测及投资战略研究报告
- 公司合作标准合同范本
- 摩托车租赁合同范本
- GB/T 45177-2024人工光型植物工厂光环境技术规范
- 2024-2025年天津河西区七年级上学期期末道德与法治试题(含答案)
- 2025年个人学习领导讲话心得体会和工作措施例文(6篇)
- 2025大连机场招聘109人易考易错模拟试题(共500题)试卷后附参考答案
- 2020-2025年中国中小企业行业市场调研分析及投资战略咨询报告
- 物流中心原材料入库流程
- 长沙市2025届中考生物押题试卷含解析
- 2024-2025学年广东省深圳市宝安区八年级(上)期末语文试卷
- 2024年芽苗菜市场调查报告
- 新版中华人民共和国会计法解读学习课件
- 新HSK一至六级词汇表
评论
0/150
提交评论