proteus中51控制LM3229液晶显示屏

上传人:oq****t 文档编号:3468098 上传时间:2017-08-05 格式:DOC 页数:13 大小:201KB
返回 下载 相关 举报
proteus中51控制LM3229液晶显示屏_第1页
第1页 / 共13页
proteus中51控制LM3229液晶显示屏_第2页
第2页 / 共13页
proteus中51控制LM3229液晶显示屏_第3页
第3页 / 共13页
proteus中51控制LM3229液晶显示屏_第4页
第4页 / 共13页
proteus中51控制LM3229液晶显示屏_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《proteus中51控制LM3229液晶显示屏》由会员分享,可在线阅读,更多相关《proteus中51控制LM3229液晶显示屏(13页珍藏版)》请在金锄头文库上搜索。

1、proteus 中 51 控制 LM3229 液晶显示屏 前段时间想弄个大点的液晶来耍,找了一下,我的 proteus 中最大的也就是 LM3229,好像是240*128 的,就写以个程序来耍一下,上网找了一下资料,不好找,下了一个朋友的程序,看不懂,最后找到了它的驱动芯片 T6963,终于把它搞懂了,自己也写了一个程序,主要是借那个朋友的思路,做了一些改动,添加了一些东西,现吧程序贡献上来,供大家点评,希望对要学习这块芯片的朋友有一点点的帮助上面这副图是前段时间弄的,没弄好,地址没设好,上面有一些乱码今天花了差不多一天的时间搞了一下,发现问题了,从新仿真的图如下J还算可以,没有乱码,程序也改

2、了,贴上来,大家个提提意见以前写的是 51 的,这个是 AVR 的,都差不多#include #include #define uchar unsigned char#define uint unsigned int #define OneLine 32 /液晶每行的宽度#define LCD_CD_H PORTD|=(18;data1=addres;WriteDDC(data1,data2,0x24);WriteCommand(0xb0);WriteData(str);WriteCommand(0xb2);/*名称: Write_Photo()*功能: 液晶画图程序,row 为图片开始行(0

3、127),rol 为图片开始列 (029),* width 为图片长(单位 Bit),deep 为图片宽(单位 bit)*/void Write_Photo(uchar row,uchar rol,uchar width,uchar deep)uint address,Photolength,i;uchar j,data1,data2,cmd;Photolength=width*deep;address = row*32+rol;data1 = address; /取地址低八位 data2 = address8; /取地址高八位 cmd = 0x24; WriteDDC(data1,data2

4、,cmd);JWriteCommand(0xb0);for(i=0;i8; /取地址高八位 cmd = 0x24; WriteDDC(data1,data2,cmd);j=0;WriteCommand(0xb0); /进入自动写模式WriteCommand(0xb2);/*名称: Write_Chinese()*功能: 液晶写汉字程序,row 为汉字开始行,rol 为汉字开始列,Chinese 为汉字字符串在* CGRAM 中的初地址 ,length 为汉字字符串的长度,(一个 16*16 点阵的汉字长度为 4)*/void SetCGRAM(void) uchar data1,data2,c

5、md; uint i; data1 = 0x03; data2 = 0x00; /设置偏移地址寄存器 cmd = 0x22; WriteDDC(data1,data2,cmd); data1 = 0x00; data2 = 0x1c; cmd = 0x24; /设置地址指针 WriteDDC(data1,data2,cmd); cmd = 0xb0; /进入自动写模式 WriteCommand(cmd); for (i = 0;i 8; /取地址高八位 cmd = 0x24; /设置地址指针,字符显示首位置 WriteDDC(data1,data2,cmd); cmd = 0xb0; /进去自

6、动写模式 WriteCommand(cmd); for(i=0;i8; /取地址高八位 cmd = 0x24; /设置地址指针,字符显示首位置 WriteDDC(data1,data2,cmd); cmd = 0xb0; /进去自动写模式 WriteCommand(cmd); for(i=1;ilength;i+)WriteData(Chinese+i);i+;cmd = 0xb2; /退出自动写模式 WriteCommand(cmd); /*名称: main()*功能: 主函数,画图,写汉字,写汉字前应设置 CGRAM*/void main(void) Port_init(); LCD_Init();SetCGRAM();Write_Photo(1,2,12,120);Write_Chinese(3,19,0x80,16) ;Write_Chinese(6,17,0x90,24) ;Write_Chinese(9,22,0xa8,4) ;while(1);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号