资源描述:
《基于单片机的 LCD汉字显示.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、单片机课程设计基于单片机的LCD汉字显示姓名:贾一超班级:电1101-4班学号:专业:电气工程及其自动化第一章概述1.1课程设计任务课程设计是在校学生素质教育的重要环节,是理论与实践相结合的桥梁和纽带。单片机课程设计,要求学生更多的完成软硬结合的动手实践方案,解决目前学生课程设计过程中普遍存在的缺乏动手能力的现象. 其目的和任务是训练学生综合运用已学课程“电子技术基础”、“单片机原理及应用”的基本知识,独立进行单片机应用技术和开发工作,掌握单片机程序设计、调试和应用电路设计、分析及调试检测。 1.2LCD显示技术液晶的物理特性是:当通电时
2、导通,排列变的有秩序,使光线容易通过;不通电时排列混乱,阻止光线通过。液晶显示器的显像原理,是将液晶置于两片导电玻璃之间,靠两个电极间电场的驱动,引起液晶分子扭曲向列的电场效应,以控制光源透射或遮蔽功能,在电源关开之间产生明暗而将影像显示出来,若加上彩色滤光片,则可显示彩色影像。液晶显示器便是根据此电压有无,使面板达到显示效果。1.3单片机及LCD选型 此设计是通过AT89C51单片机来控制LCD来显示一些要求的汉字,如石家庄铁道大学、电气工程学院、单片机等字样。对于LCD,此设计使用128×64的LCD,同时由于LGM12641BSIR
3、LCD的资料比较容易得到,且比较通俗易懂,便于快速上手,所以就选用LGM12641BSIRLCD用来作为显示。第二章硬件设计2.1主要芯片介绍单片机AT89C51AT89C51是ALTEM公司的一种高效微控制器,它将多功能8位cpu和闪烁存储器组合在单个芯片中,带有4k字节可编程可擦除只读存储器,有128Byte片内RAM。并且与工业标准的MCS-51指令集和输出管脚想兼容,灵活运用于各种控制领域。液晶模块LGM12641BSIRLCD液晶模块128x64点阵的汉字图形液晶显示模块,可显示汉字及图片VSS:电源地。VDD:+5V电源输入。
4、VO:液晶显示对比度调节。RS:数据命令选择端。高电平数据,低电平命令。RW:读写选择端。高电平读信号,低电平写信号。E:读写使能端。DB0-DB7:数据总线。PSB:并串选择端口。高电平并行传输,低电平串行传输。RST:复位端,低电平有效。L+:背光源正端(+5V)。L-:背光源负端。2.2模块电路设计电源部分通过USB接口给整个电路提供+5V的电压驱动电路。晶振部分如图所示两根线分别连接AT89C51的XTAL1与XTAL2引脚为系统提供的12MHz的时钟频率。液晶模块连接AT89CT1的RST端,单片机上电后会自动复位,当软件运行出
5、现未知错误需要复位时,按下开关S2本电路在RST端产生高电平,系统复位,程序重新开始执行。单片机AT89C51引脚电路原理图第三章软件设计3.1程序流程设计程序实现功能:本设计可以实现16x16汉字显示程序流程图如图5所示:3.2C语言程序设计#include#includetypedefunsignedcharuchar;typedefunsignedintuint;#defineLLCD_CMD_WRPBYTE[0x10]#defineLLCD_CMD_RDPBYTE[0x11]#defineLL
6、CD_DATA_WRPBYTE[0x12]#defineLLCD_DATA_RDPBYTE[0x13]#defineRLCD_CMD_WRPBYTE[0x20]#defineRLCD_CMD_RDPBYTE[0x21]#defineRLCD_DATA_WRPBYTE[0x22]#defineRLCD_DATA_RDPBYTE[0x23]sbitbusy=P0^1;ucharcodehz0[]={0x00,0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xF8,0x00,0x0
7、0,0x00,0x00,0x00,0x0F,0x04,0x04,0x04,0x04,0x3F,0x44,0x44,0x44,0x44,0x4F,0x40,0x70,0x00,0x00,0x20,0x10,0x8C,0xA7,0xA4,0xA4,0xA4,0xA4,0xA4,0xA4,0xA4,0x24,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x30,0x40,0xF0,0x00,0x00,0xFE,0x02,0x02,0x02,
8、0xFE,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0