欢迎来到天天文库
浏览记录
ID:36971265
大小:32.50 KB
页数:7页
时间:2019-05-05
《基于51单片机控制的液晶显示屏c程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.基于51单片机控制的液晶显示屏C程序设计作者:付文莉来源:《硅谷》2013年第05期 摘要点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线和汉字。本文介绍了采用C语言实现对液晶显示器TG12864的控制。 关键词单片机;C语言;TG12864;液晶显示 中图分类号:TP271文献标识码:A文章编号:1671—7597(2013)031-017-02 1TG12864液晶原理 1.1TG12864显示原理 点阵式LCD其显示原理是控制LCD点阵中
2、点的亮暗,亮和暗的点阵按一定规律可以组成汉字,组成一幅图形和曲线等。 1.2TG12864内部结构及相关指令 1.2.1TG12864内部结构 TG12864是一种图形点阵液晶显示器,它主要由行驱动器、列驱动器及128×64全点阵液晶显示器组成,有20个外部引脚。可以由单片机控制显示8×4个16×16点阵汉字。 1.2.2TG12864相关指令 该类液晶显示模块的指令系统比较简单,总共有七种。 1)显示开关指令。 功能:设置屏幕显示开/关,DB
3、0=1,开显示;DB0=0,关显示。DB7~DB0=0x3f,开显示;DB7~DB0=0x3e,关显示。 2)显示起始行设置。.. 功能:显示起始行是由Z地址计数器控制的,该命令自动将A0~A5位地址送入Z地址计数器,起始地址可以是0~63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫面同步,当扫描完一行后自动加一。DB7~DB0=0xc0,显示从0行开始。 3)页设置。 功能:页地址存储在X地址计数器中,A2~A0可表示8页,读写数据对页地址没有影响,除本指令可改变页地址
4、外,复位信号RST可把页地址计数器内容清零。DB7~DB0=0xb8,显示从0页开始。 4)列地址设置。 功能:列地址存储在Y地址计数器中,读写数据对列地址有影响,在对DDRAM进行读写操作后,Y地址自动加一。DB7~DB0=0x40,显示从0列开始。 5)读状态。 功能:读忙信号标志位BF,复位标志RST以及显示状态(ON/OFF)bf=1,内部忙;bf=0,内部空闲;res=1,正处于复位初始化状态,res=0,正常状态。 6)写数据。 写数据到DDRA
5、M,DDRAM是存储图形数据的,写数据到DDRAM前,要先执行设置页地址及设置列地址命令。 7)读数据。 从DDRAM读数据,读数据前,要先执行设置页地址及设置列地址命令。 2应用程序设计 #include #defineucharunsignedchar #defineuintunsignedint #definedisp_on0x3f//定义开显示 #definedisp_off0x3e//定义关显示 #defi
6、nedis_x0xb8//定义显示0页.. #definedis_y0x40//定义显示0列 #definedis_z0xc0//定义显示0行 #definedbP0 sbitrs=P2^0; sbitrw=P2^1; sbite=P2^2; sbitcs1=P2^3; sbitcs2=P2^4; sbitrst=P2^5; sbitbf=P2^6; sbitres=P2^7;
7、 ucharcodetab[]={/*青海工业职业学校*/0x01,0x00,0x01,0x00,0x3F,0xF8,0x01...}; voidcheck_busy(void); voidchushihua(void); voiddelay(uint); voidwr_lcd(uchar,uchar); voidclear_lcd(void); voiddisplay(void); void_disp(uchar,uchar,uchar,u
8、char,uchar,uchar*); voidmain()//主程序 {chushihua();display();while(1);}..
此文档下载收益归作者所有