1、摘要 如今随着社会的发展,单片机技术日益展现出它的重要性,目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。液晶显示模块大致分为段码型液晶模块、点阵字符液晶模块和点阵图形液晶模块2类。段码型液晶模块是由数显液晶显示器和集成电路组装成的部件,也成为笔段型液晶模块。其段码显示形式与LED显示器类似,可以显示数字和英文字符。因此,不仅可以显示字
2、符、数字、,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动、动画、分区开窗口、反转、闪烁等功能,用途十分广泛。关键字:AT89C51芯片;SED150控制器;液晶显示屏目录一、硬件系统设计1(一)、设计说明与元件类型1(二)、设计总框图1(三)、AT89C51的功能和介绍1二、复位电路3(一)、晶振电路4(1)晶振震荡器的作用4(2)时钟周期4(3)在一个时钟周期内4(4)SED1520液晶显示器功能和特性5(二)、SED1520的指令系统5三、系统软件设计7(一)主程序7总结11参考文献12一、硬件系统设计(一)、设计说明与元件类型 本设计采用的芯片是AT89C51,设计采用的
3、液晶显示屏内置控制器为SED1520,点阵为122*32,有两片SED1520组成,分别有E1、E2分别选通,控制显示屏的左右两半屏。每片SED1520横向61点纵向有16点,故两片SED1520可控制横向122点,纵向32点。在如今的社会里,字符行液晶显示模块内置的液晶驱动控制其种类很多,常有的有SED1520、SED1335、HD61202U和T6963C。在小规模字符行液晶显示模块上,使用SED1520液晶小时驱动控制器组成液晶显示驱动和控制系统,是低成本、低功耗、高集成的最佳选择。(二)、设计总框图总体设计共分为4个模块:使系统恢复初始状态的复位电路模块;稳定频率和选择频率的晶振电路模
4、块;功能键电路模块;储存系统程序的AT89C51芯片以及显示效果的LCD液晶显示模块。这4个模块组成了我们的设想。如图1所示AT89C51芯片LCD液晶显示复位电路复位晶振电路图1 设计框图(三)、AT89C51的功能和介绍 AT89C51是一种低电压,高性能CMOS 8位微处理器,带有4K字节闪烁可编程可擦除只读存储器,该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。其为很多嵌入式控制系统提供了一种灵活性高且廉价的方案。如图2AT89C51芯片
5、主要特征:与MCS-51兼容4K字节可编程闪烁存储器寿命:1000写/擦循环全静态工作:0Hz-24MHz三级程序存储器锁定128*8位内部RAM32根可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路图2二、复位电路 单片机在开机时或在工作中因困扰而使程序失控,或工作中程序处于某种死循环状态,在这些情况下都需要复位。复位的作用是使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这个状态重新开始工作。8051单片机的复位靠外部电路实现,信号由RESET引脚输入,高电平有效,在振荡电路时,只要保持RST引脚高电平两个机器周期,
6、单片机复位。复位后,PC程序计算器的内容为0000H,无轮是在单片机刚开始接上电源时,还是断电后或发生故障后都要复位,所以我们必须弄清楚MCS-51型单片机的复位条件、复位电路和复位后的状态。单片机复位的条件是:必须使RS、Vpd或RST引脚(9)加上持续两个机器周期(即24个振荡周期)的高电平。例如:若时钟频率为12MHz,每机器周期为1us,则只需2us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位,我们用的复位如电路图3所示:图3 复位电路图(一)、晶振电路 (1)晶振震荡器的作用:石英晶体振荡器也称石英晶体谐振器,它用来稳定频率和选择频率,是一种可以取代LC谐振回路
7、的晶体谐振元件。(2)时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12us,是计算机中最基本的、最小的时间单位。(3)在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250us。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏(使计算机的每一步都统一到它的步调上来)。显然,由于不同的计算机硬件电路和器件的不完全相同,所以其所需要的时钟频率范围也不一定相同。本设计所用的晶体震荡电路如图4图4 晶体振荡电路(4)SED1520液晶显示器功能和特性 SED15
8、20是集行、列驱动器和控制器于一体的液晶显示控制驱动器,可广泛用于小规模液晶显示模块,例如香港精电公司的MGLS-12032、MGLS10032等。SED1520液晶显示器的特性有内置2560位显示RAM区,RAM中的1位数据控制液晶屏上一个像素的亮、暗状态:“1”表示亮、“0”表示暗;具有16个行驱动输出和61个列驱动输出;可直接与80系列微处理器相连,亦可直接与68系列微处理器相连;驱动占空比为1/16或1/32可以与SED1520级联使用,以便扩展行、列驱动能力(二)、SED1520的指令系统 表1.1 SED1520控制指令指令名称控制信号控制代码AO R/WD7D6D5D4D3D2D
9、1D0复位0011100010显示开关设置001010111DI地址排序设置001010000A休闲状态设置001010010S占空比设置001010100DUSED1520的13条指令从作用上分为两大类:一类为显示方式的设置指令,前六条指令为这一类指令,他们只需在初始化程序中写入一次就可以了。另一类为显示数据读/写操作的指令,从第七条往下都是这类指令,他们需要经常的使用。下面详细解释各个命令的功能:复位格式(Reset)11100010OE2H休闲状态 设置(Statis drive ON/OFF)1010010SOA4H/0A5H 该指令是休闲状态的软件开关,当S=1时,SED1520进入
10、休闲状态;当S=0是,SED1520将中止或退出休闲状态。占空比设置(Slect duty)1010100DU0A8H/0A9H该指令用于设置SED1520的占空比,Du=0时为1/16占空比,Du为1时为1/32占空比。ADC选择指令(Selet ADC)1010000AV0A0H/0A1H该指令用于设置显示存储器中单位的地址所对应的显示驱动输出的顺序。A=0时,顺时针显示;A=1时,逆时针显示。显示起始行设置(Display start line)110L4L3L2L1L00AEH/0AFH显示开/关设置(Display ON/OFF)1010111DI0AEH/0AFH该指令控制着显示驱
11、动器的输出,当Di=0时,显示关,当Di=1时,显示开。 页面显示存储设置101111P1P20B8H/0BBH 三、系统软件设计 (一)主程序程序开始运行后,要对液晶现实进行初始化。初始化后清屏,为输出数据做准备。然后调用正文显示程序,在显示屏上显示数据。如果有按键的话,程序会进行相应的处理。如此循环。开始主程序图如图5所示初始化清屏程序中文显示程序否有按键是换屏程序图5 主程序图程序如下:AO EQU P3.4; 寄存器选择信号R_W EQU P3.5; 读写选择信号E1 EQU P3.6; 使能信号1E2 EQU P3.7; 使能信号2PD1 EQU 3DH; 122/2分左右两半屏 C
12、OLUMN EQU 30H; 列地址寄存器PAGE_ EQU 31H; 页地址寄存器d1CODE_ EQU 32HCOUNT EQU 33HDIR EQU 34HCTEMP EQU 38HCOM EQU 20HDAT EQU 21HORG 0000HLJMP MAINORG 000BHLJMP INITORG 0030H在屏幕上显示一个英文字符 int main(void)DDRC =0xff;PORTC=0xff;DDRD =0xff;PORT=0xff;PORTD=0xff;DDRA =0xff;PORTA=0xff;char page=0,y=0,i; /LCD_CS1_L(); /LC
13、D_write_command(0xAf); /LCD_write_command(0xC0+y);While(1)LCD_CS1_L();LCD_write_command(0Xb8+page);LCD_write_command(0x40+y);for(i=0;i5;i+) LCD_write_data(datadi); For(i=0,i5;i+) LCD_write_data(dataxi);总结2012年10月,我开始了我的毕业论文工作,时至今日,论文基本完成。从最初的茫然,到慢慢的进入状态,再到对思路逐渐的清晰,整个写作过程难以用语言来表达。历经了几个月的奋战,紧张而又充实的毕业设
14、计终于落下了帷幕。回想这段日子的经历和感受,我感慨万千,在这次毕业设计的过程中,我拥有了无数难忘的回忆和收获。经过多日的努力我的毕业设计终于完成了,但是现在回想起来做毕业设计的整个过程,颇有心得,其中有苦也有甜,艰辛同时又充满乐趣,不过乐趣尽在其中!通过本次毕业设计,没有接受任务以前觉得毕业设计只是对这几年来所学知识的单纯总结,但是通过这次做毕业设计发现毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。我不会忘记这难忘的几个月的时间。毕业论文的制作给了我难忘的回忆。在我徜徉书海查找资料的日子里,面对无数书本的罗列,最难忘的是每次找到资料时的激动和兴奋;亲手设计电路图的时间里
15、,记忆最深的是每一步小小思路实现时那幸福的心情;为了论文我曾赶稿到深夜,但看着亲手打出的一字一句,心里满满的只有喜悦毫无疲惫。这段旅程看似荆棘密布,实则蕴藏着无尽的宝藏。我从资料的收集中,掌握了很多单片机、LED显示屏的知识,让我对我所学过的知识有所巩固和提高,并且让我对当今单片机、LED显示屏的最新发展技术有所了解。在整个过程中,我学到了新知识,增长了见识。在今后的日子里,我仍然要不断地充实自己,争取在所学领域有所作为。 在此更要感谢我的导师和专业老师,是你们的细心指导和关怀,使我能够顺利的完成毕业论文。在我的学业和论文的研究工作中无不倾注着老师们辛勤的汗水和心血。老师的严谨治学态度、渊博的知识、无私的奉献精神使我深受启迪。从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意。 参考文献1. 刘景文,嵌入式系统,天津滨海职业学院机电工程系副教授。2. 王幸之,钟爱琴,AT89系列单片机原理与接口技术,北京航空大学出版社 3. 梅丽凤、王艳秋编。单片机原理及接口技术 4. 邹振春,MCS-51系列单片机及接口技术,北京:机械工业出版社,1999 5. 王军,物流管理,机械工业出版社,2013.5 6. 刘海成。AVR单片机原理及测控工程应用基于Atmega16【M】。北京:北京航空大学出版社,2008.12