单片机课程设计(论文)液晶显示驱动的设计.doc

上传人:仙人指路1688 文档编号:4147703 上传时间:2023-04-07 格式:DOC 页数:20 大小:181KB
返回 下载 相关 举报
单片机课程设计(论文)液晶显示驱动的设计.doc_第1页
第1页 / 共20页
单片机课程设计(论文)液晶显示驱动的设计.doc_第2页
第2页 / 共20页
单片机课程设计(论文)液晶显示驱动的设计.doc_第3页
第3页 / 共20页
单片机课程设计(论文)液晶显示驱动的设计.doc_第4页
第4页 / 共20页
单片机课程设计(论文)液晶显示驱动的设计.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《单片机课程设计(论文)液晶显示驱动的设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计(论文)液晶显示驱动的设计.doc(20页珍藏版)》请在三一办公上搜索。

1、一、绪论21.1介绍31.1.1基本原理31.1.2发展现状41.2.设计项目的任务41.2.1任务书41.2.2功能指标4二、总体方案设计52.1.单片机选择52.1.1方案一:AT89S515三、 硬件部分93.1硬件系统的总体设计框图93.2单片机AT89S5293.2.1单片机各管脚的用10四、软件部分114.1.主程序流程图11五、调试及性能分析185.1.硬件调试185.2.软件调试195.3.性能分析19六、课设心得19七参考文献液晶显示驱动的设计一、绪论单片机控制系统是以单片机(CPU)为核心部件,扩展一些外部接口和设备,组成单片机工业控制机,主要用于工业过程控制。要进行单片机

2、系统设计首先必须具有一定的硬件基础知识;其次,需要具有一定的软件设计能力,能够根据系统的要求,灵活地设计出所需要的程序;第三,具有综合运用知识的能力。最后,还必须掌握生产过程的工艺性能及被测参数的测量方法,以及被控对象的动、静态特性,有时甚至要求给出被控对象的数学模型。在线控制系统用途还是比较广泛,可以用它来实现想单片机发出控制等等,从而加快单片机的发展以及单片机应用技术的成熟,单片机在线控制操作系统前景十分看好,因为现在单片机技术正在日趋成熟,以后单片机将成为我们生活中必不可少的,从而使得单片机在线控制操作系统尤为重要!单片机控制技术应用十分广泛,其核心技术是单片机控制系统的设计。介绍了对单

3、片机控制系统的构成、硬件设计、软件设计和系统调试等各环节并进行了讨论,根据工作经验给出了调试方法。随着半导体技术的飞速发展,单片机本身的设计中不断采用了一些新的抗干扰技术,使单片机的可靠性不断提高。除选择抗干扰能力强的单片机外,单片机系统中其它辅助元器件的可靠性也至关重要,一些抑制干扰的元器件的使用有助于提高系统的可靠性。此外,单片机系统在电路设计、印制电路板的设计、布线与制造工艺、系统安装时有无良好的接地等,都直接影响应用系统的可靠性。1.1.项目的背景介绍1.1.1基本原理计时智能控制系统采用硬件触发加软件检测、控制的方法,利用机械设备运转时产生的振动信号,通过微处理器来判断是否有代表设备

4、运行的信号出现,控制计时并进行简单运算,触发计时器进入工作状态,再由CPU读取开机时间参数,并存储;振动信号消失后,计时触发信号消失,计时器停止工作,并将当前工作时间和累计工作时间分别存储。通过通讯口进行简单查询或与计算机连接读取数据并进行分析,得到机械设备工作的有关数据。计时器核心采用性价比高、体积小、支持低功耗模式的87C51芯片作为微处理器,该芯片集成了2个定时/计时器、2个外中断源、串行I/O口、并行I/O口;具有算术运算、逻辑运算、控制转移等功能,并可对其编程实现多种功能。工业芯片使用范围为- 4070,性能可靠稳定。为增加计时精度,增加1片频率为32768Hz的手表晶振;数据存储选

5、用E2 PROM芯片,用耗能低且可靠性高的4位点阵液晶显示屏显示数据。1.1.2发展现状曾经计时工具来改进定时器,达到准确控制时间的目的。现在控制时间的工作变得简单了许多。人们甚至将定时器用在了军事方面,制成了定时炸弹,定时雷管。现在的不少家用电器都安装了定时器来控制开关或工作时间等。1.1.3前景单片机的技术进步反映在内部结构、功率消耗、外部电压等级以及制造工艺上。在这几方面,较为典型地说明了单片机的水平。在目前,用户对单片机的需要越来越多,但是,要求也越来越高。所以它向着巨型、单片、网络化发展。时钟计时器也向着小型化,多功能,高精度的方向发展.1.2.设计项目的任务1.2.1任务书设计电子

6、时钟计时器的硬件电路,实现LCD显示器的数字显示。用以配合软件实现时、分、秒的时间计时。1.2.2功能指标2.1采用LCD1602显示时间2.2上电或复位后,能自动显示当前时间,每次上电复位显示为0时0分0秒,以后每次按RESET复位键均显示当前正确时间。2.3设置3个控制键A,B,C.按下A,调整时,按下B,调整分,按下C,调整秒 二、总体方案设计2.1.单片机选择2.1.1方案一:AT89S51AT89S51单片机功能: 8位中央处理器和ISP Flash存储单元,片内含4k Bytes Flash,128 bytes的可以反复擦除1000次随机存取数据存储器(RAM),器件高密度、非易失

7、性存储,32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡兼容标准 AT80C51引脚结构,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 2.1.2方案二:AT89S52AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定而且它体积小,硬件实现方便,安装方便,以及与编程技术和外围功能电路的配合技术比较娴熟。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU

8、停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路2.1.3方案三: AT89C51AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。 AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件高密度、非易失存储器,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位

9、CPU和闪烁存储器组合在单个芯片中, AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。综上所述选择AT89S52为合适2.2.液晶1602等相关资料2.2.1 液晶1602采用标准的16脚接口第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行

10、读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。 第714脚:D0D7为8位双向数据线。 第1516脚:空脚 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出

11、来,我们就能看到字母“A”2.2.2 液晶管脚连接图三、 硬件部分3.1硬件系统的总体设计框图按键调节AT89C52 P0单片机控制器 P2 P2液晶显示器列驱动 硬件系统的总体设计框图硬件分为单片机AT89s52、LCD1602、键盘、电源、复位开关、晶振这几个部分3.2单片机AT89S52AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定而且它体积小,硬件实现方便,安装方便,以及与编程技术和外围功能电路的配合技术比较娴熟。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、

12、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路3.2.1单片机各管脚的用 P0口输入数据;P2.0P2.1口作列扫描输出;采用12MHz晶振,可提高秒施的精确性;RST作为复位开关;P2口作为数码管的输出端;Vcc和EA都作为单片机的电源输入端,为单片机供电; XTL1,XTL2是用于接晶振;Vss接地3.2.2液晶1602它的管脚有16管脚,Vdd接高电平,一般+5v,Vss接低电平;V0也是接低电平;

13、D0D7为8位双向数据线;RS为寄存器选择;RW为读写信号线;E端为使能端;15、16脚一般可以不用(15接高电平,16接低电平)。3.2.3按键调节部分本设计中用到3个按键,用P3口接独立键盘即可满足需求 键盘功能如下:按P3.0进入选择操作状态,P3.1键用于加时间调节,P3.2键用于减调节; 3.3硬件仿真图3.4硬件实物展示图四、软件部分4.1.主程序流程图开始初始化进入功能程序按键盘调节时间键按下?整点到?调用显示子程序NY4.2.T1中断程序流程图T1中断保护现场显示处理加10ms处理闪烁处理恢复现场,中断返回时钟显示时钟调时闪烁4.3.T0中断计时程序流程图T0中断保护现场定时初

14、值校正1s到?加1s处理恢复现场,中断返回NY4.4显示程序设计#include#define uchar unsigned char #define uint unsigned intsbit RS=P20;sbit E=P21;sbit key1=P30;sbit key2=P31;sbit key3=P32;uchar count,s1num;char miao,shi,fen;uchar code table= 2009-12-30 WED;uchar code table1= 00:00:00;void delay(uint z)uint x,y;for(x=z;x0;x-)for(

15、y=110;y0;y-);void write_com(uchar com)RS=0;E=0;P0=com;delay(5);E=1;delay(5);E=0;void write_date(uchar date)RS=1;E=0;P0=date;delay(5);E=1;delay(5);E=0;void init()uchar num;E=0;write_com(0x38);write_com(0x0c);write_com(0x06);/write_com(0x01);write_com(0x80);for(num=0;num15;num+)write_date(tablenum);de

16、lay(5);write_com(0x80+0x40);for(num=0;num12;num+)write_date(table1num);delay(5);TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;void write_sfm(uchar add,uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge);void keysca

17、n()if(key1=0)delay(5);if(key1=0)s1num+;while(!key1);if(s1num=1)TR0=0;write_com(0x80+0x40+10);write_com(0x0f);if(s1num=2)write_com(0x80+0x40+7);if(s1num=3)write_com(0x80+0x40+4);if(s1num=4)s1num=0;write_com(0x0c);TR0=1;if(s1num!=0)if(key2=0)delay(5);if(key2=0)while(!key2);if(s1num=1)miao+;if(miao=60)

18、miao=0;write_sfm(10,miao);write_com(0x80+0x40+10);if(s1num=2)fen+;if(fen=60)fen=0;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi+;if(shi=24)shi=0;write_sfm(4,shi);write_com(0x80+0x40+4);if(key3=0)delay(5);if(key3=0)while(!key3);if(s1num=1)miao-;if(miao=-1)miao=59;write_sfm(10,miao);write_com

19、(0x80+0x40+10);if(s1num=2)fen-;if(fen=-1)fen=59;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi-;if(shi=-1)shi=23;write_sfm(4,shi);write_com(0x80+0x40+4);void main()init();while(1)keyscan();void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=20)count=0;miao+;i

20、f(miao=60)miao=0;fen+;if(fen=60)fen=0;shi+;if(shi=24)shi=0;write_sfm(4,shi);write_sfm(7,fen);write_sfm(10,miao);五、调试及性能分析5.1.硬件调试 硬件调试时可先检查印制板及焊接的质量情况,在检查无误后可通电检查LCD显示器的状况。若亮度不理想,可以调整P0口的电阻大小,一般情况下取200R电阻即可获得满意的亮度效果。实验室制作时,可结合示波器测试晶振及P0、P2端口的波形情况进行综合硬件测试分析。5.2.软件调试 软件调试在Wave编译器下进行,源程序编译及仿真调试应分段或予以子程

21、序为单位逐个进行,最后可结合硬件实时调试。5.3.性能分析 按照设计程序分析,LCD显示器动态扫描的频率约为167HZ,实际使用观察时完全没有闪烁,由于计时中断程序中加了中断程序中加勒中断延时误差处理,所以实际计时精度非常高,可满足多种场合的应用需要,另外,上电时具有一个滚动显示子程序,可以方便地显示制作日期等信息。六、实训心得看了郭天翔的单片机第十课,电子钟的设计。 刚开始下载到我的实验板上,不能正常运行,(而郭的板子可以运行,东东的也可以运行)按下按键时,光标乱跑。估计是按键消抖问题,没释放按键。想了一阵,也改了一些地方,主要是大括号的位置,结果不是没反应,就是光标乱跳,打算放弃,后来还是

22、迫于压力,反复看了几遍程序,回到按键消抖上来,于是在每个判断中加入了一句while(!k?),问题终于解决。哈,终于松了口气,还好没被自己的惰性所扼杀。 总结这么几点:1程序中大括号的位置要注意,2液晶驱动严格按时序写。3边写边编译,有错立马找寻原因,然后排除,当然,还有就是别轻易放弃。七参考文献1 张齐,杜群贵.单片机应用系统设计技术M.北京:电子工业出版社,20072 中国机械工业教育协会 组编.单片机原理与应用.机械工业出版社.20013 杨金岩等.8051单片机数据传输接口扩展技术与应用实例M北京:人民邮电出版社,20054 求是科技单片机通信技术与工程实践M北京:人民邮电出版社,20055 杨金岩等.8051单片机数据传输接口扩展技术与应用实例M北京:人民邮电出版社,20056 郭永贞主编 数字电子技术M 西安电子科技大学出版社 20007 李广弟 单片机基础M,北京:北京航空航天大学出版社,20018 张洪润 电子线路与电子技术M.清华大学出版社M,20059单片机应用技术及项目化训练 主编:李庭贵10单片机课程设计指导 编者:李广飞 楼然苗

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号