12232液晶显示程序_第1页
12232液晶显示程序_第2页
12232液晶显示程序_第3页
12232液晶显示程序_第4页
12232液晶显示程序_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、/*=功能:使用12232液晶显示图片演示硬件:TG12232B(122*32)模拟口线接线方式连接线图:|DB0-P0.0DB4-P0.4|RWP1.1A0P1.0|DB1-P0.1DB5-P0.5|RSP2.1V0接1K电阻到GND|DB2-P0.2|DB6-P0.6|E1P1.3|DB3-P0.3|DB7-P0.7|E2P1.2|本程序源码只供学习参考,如有需要请联系作者。注:AT89x52使用22.1184M或11.0592M晶振,实测使用22.1184M或11.0592都可以编译平台:KeiluV27.08,当/可能看起来有点乱,不过效果还是不错的,显示图形总的来说比显示汉字要简单然

2、显示汉字也不难。希望此程序能给你一些帮助。=*/#include#defineucharunsignedchar#defineuintunsignedint#defineE1P1_3/块1左边#defineE2P1_2/块2右边#defineRWP1_1#defineA0P1_0/A0为1时是数据,0时为指令数据#defineDATAP0/数据externunsignedcharcodeBmpt1;externunsignedcharcodeBmpt2;externunsignedcharcodeBmpt3;externunsignedcharcodeBmpt4;externunsignedc

3、harcodeBmpt5;externunsignedcharcodeBmpt6;externunsignedcharcodeBmpt7;externunsignedcharcodeBmptc;externunsignedcharcodebmp001;externunsignedcharcodeBmp08;externunsignedcharcodeBmp07;externunsignedcharcodeBmp06;externunsignedcharcodeBmp05;externunsignedcharcodeBmp04;externunsignedcharcodeBmp03;extern

4、unsignedcharcodeBmp02;externunsignedcharcodeBmp01;externunsignedcharcodeBmp012;externunsignedcharcodeBmp003;externunsignedcharcodeBmp002;/延时voiddelay(unsignedinti)unsignedchark=200;while(i0)i-;while(k1)k-;/左页/发送数据voidOUTMD(unsignedchari)A0=1;/写数据/delay(5);E1=1;/delay(10);DATA=i;/delay(5);E1=0;/左页/发送

5、命令voidOUTMI(unsignedchari)A0=0;/写指令/delay(5);E1=1;/delay(10);DATA=i;/delay(5);E1=0;/右页/发送数据voidOUTSD(unsignedchari)A0=1;/写数据/delay(5);E2=1;/delay(10);DATA=i;/delay(5);E2=0;/右页/发送命令voidOUTSI(unsignedchari)A0=0;/写指令/delay(5);E2=1;/delay(10);DATA=i;/delay(5);E2=0;/初始化voidlcdini(void)RW=0;OUTMI(0XE2);0U

6、TSI(0XE2);/复位OUTMI(0XAE);OUTSI(0XAE);/POWERSAVEOUTMI(0XA4);0UTSI(0XA4);/动态驱动OUTMI(0XA9);OUTSI(0XA9);/1/32占空比OUTMI(0XA0);OUTSI(OXAO);/时钟线输出OUTMI(0XEE);OUTSI(OXEE);/写模式OUTMI(0X00);OUTMI(0XC0);OUTSI(0X00);OUTSI(0XC0);OUTMI(0XAF);OUTSI(0XAF);/*函数说明:同时设置主从显示页为03页。(内函数,私有,用户不直接调用)*/voidSetPage(ucharpage0,

7、ucharpage1)OUTMI(0 xB8|page1);OUTSI(0 xB8|page0);/*函数说明:同时设置主从列地址为0121。(内函数,私有,用户不直接调用)*/voidSetAddress(ucharaddress0,ucharaddress1)OUTMI(address1);OUTSI(address0);/*调用方式:voidPutChar0(ucharch)函数说明:在右页当前地址画一个字节8个点。(内函数,私有,用户不直接调用)-*/voidPutCharR(ucharch)OUTSD(ch);/*调用方式:voidPutChar1(ucharch)函数说明:在左页当

8、前地址画一个字节8个点。(内函数,私有,用户不直接调用)-*/voidPutCharL(ucharch)OUTMD(ch);/*调用方式:voidDrawBmp(bitlayer,ucharwidth,uchar*bmp)函数说明:画一个图,layer表示上下层,width是图形的宽,高都是16,bmp是图形指针使用zimo3软件,纵向取模,字节倒序/240字节-*/voidDrawBmp(bitlayer,ucharwidth,uchar*bmp)ucharx,address,i=O;/address表示显存的物理地址ucharpage=0;/page表示上下两页bitwindow=0;/w

9、indow表示左右两页/putcharR/右边/putcharL/左边for(x=width;x1;x-)if(i60)window=1;address=i%61;elseaddress=i;if(layer=0)/显示一行八个字SetPage(0,0);SetAddress(address,address);if(window=1)PutCharR(bmp);elsePutCharL(bmp);SetPage(1,1);SetAddress(address,address);if(window=1)PutCharR(bmpi+width);elsePutCharL(bmpi+width);e

10、lse/显示第二行八个汉字SetPage(2,2);SetAddress(address,address);if(window=1)PutCharR(bmp);elsePutCharL(bmp);SetPage(3,3);SetAddress(address,address);if(window=1)PutCharR(bmpi+width);elsePutCharL(bmpi+width);i+;/*调用方式:voidclrscr(void)函数说明:清屏-*/voidclrscr(void)uchari;ucharpage;for(page=0;page4;page+)SetPage(pag

11、e,page);SetAddress(0,0);for(i=0;i1;x-)if(x_add60)window=1;address=x_add%61;elseaddress=x_add;SetPage(0,0);SetAddress(address,address);if(window=1)PutCharR(bmp);elsePutCharL(bmp);SetPage(1,1);SetAddress(address,address);if(window=1)PutCharR(bmpi+width);elsePutCharL(bmpi+width);SetPage(2,2);SetAddress

12、(address,address);if(window=1)PutCharR(bmpi+width+width);elsePutCharL(bmpi+width+width);SetPage(3,3);SetAddress(address,address);if(window=1)PutCharR(bmpi+width+width+width);elsePutCharL(bmpi+width+width+width);i+;x_add+;/采用zimo2显示汉字,以汉字的显示方式/voidDraw_word(uchard_where,uintx_add,bitlayer,ucharwidth)

13、/d_where表示在码表中第几个汉字,x_add横坐标位置,layer显示的层,widthDO的宽度。/voidDraw_word(uchard_where,uintx_add,bitlayer,ucharwidth)ucharx,i=O,address;/address表示显存的物理地址ucharpage=0;/page表示上下两页bitwindow=0;/window表示左右两页/putcharR/右边/putcharL/左边d_where=d_where*32;for(x=width;x1;x-)if(x_add60)window=1;address=x_add%61;elseaddr

14、ess=x_add;if(layer=0)/显示一行八个字SetPage(0,0);SetAddress(address,address);if(window=l)PutCharR(bmp001d_where);/l边elsePutCharL(bmp001d_where);/J边SetPage(1,1);SetAddress(address,address);if(window=1)PutCharR(bmp001d_where+width);elsePutCharL(bmp001d_where+width);else/显示第二行八个汉字SetPage(2,2);SetAddress(addre

15、ss,address);if(window=l)PutCharR(bmp001d_where);/右边elsePutCharL(bmp001d_where);/左边SetPage(3,3);SetAddress(address,address);if(window=1)PutCharR(bmp001d_where+width);elsePutCharL(bmp001d_where+width);x_add+;d_where+;/*/字模2显示一个汉字/纵向取模,字节倒序voiddisp_one(bittop_low,bitwidows,ucharaddress,ucharwidth,uchar

16、*bmp)if(top_low=0)SetPage(0,0);SetAddress(address,address);if(window=1)PutCharR(bmp001next);elsePutCharL(bmp001next);SetPage(1,1);SetAddress(address,address);if(window=1)PutCharR(bmp001nexti+width);elsePutCharL(bmp001nexti+width);elseSetPage(0,0);SetAddress(address,address);if(window=1)PutCharR(bmp0

17、01next);elsePutCharL(bmp001next);SetPage(1,1);SetAddress(address,address);if(window=1)PutCharR(bmp001nexti+width);elsePutCharL(bmp001nexti+width);*/液晶显示规则/M(左)S(右)/pagepage/0|0/1|1/2|2/3|3voiddelay1s(unsignedchari)while(i1)i-;delay(65530);/显示动态的等待图标voidwait1(unsignedchari)for(;i1;i-)delay1s(2);clrsc

18、r();/DrawBmp1(0,60,Bmptc);/DrawBmp1(76,19,Bmpt1);/delay1s(2);clrscr();/DrawBmp1(0,60,Bmptc);/DrawBmp1(76,19,Bmpt2);/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);/演示程序voidmain()lcdini();/resetclrscr();/clrDraw_word(0,0,0,16);/Draw_word(1,16,0,16

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论