- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单片机控制的电子万年历功能:电子万年历能显示阳历、时间能表明是否是闰年,通过按键实现切换。
本课题以单片机为核心,设计并制作出智能LD电子钟,具有以下基本计时秒、分、时、天、周、月、年;时间、年份、日期、星期显示能区分是否闰年扩展部分控制按键使时间暂停通过按键切换轮流显示时间、年份、日期、星期。
方案论证与对比
.1液晶显示器控制方式选择
采用LD液晶显示,具、、、等优点,但被动矩阵式LCD及主动矩阵式LCD两种。可根据不同需要采用不同的。
方案一 被动矩阵式LCD
被动矩阵式LCD在亮度及可视角方面受到较大的限制,反应速度也较慢。由于画面质量方面的问题,使得这种显示设备不利于发展为桌面型显示器,但成本低廉方案二 主动矩阵式LCD目前应用比较广泛的主动矩阵式LCD,也称TFT-LCD(Thin Film Transistor-LCD,薄膜晶体管LCD)。TFT液晶显示器是在画面中的每个像素内建晶体管,可使亮度更明亮、色彩更丰富及更宽广的可视面积。与CRT显示器相比,LCD显示器的平面显示技术体现为较少的零件、占据较少的桌面及耗电量较小,但CRT技术较为稳定成熟.2 并行接口动态显示电路选择
可以采取串行接口动态显示电路或者并行接口动态显示电路,比较如下:方案一 串行接口动态显示电路
利用8051系列单片机内部的串行接口,也可以实现动态显示及键盘处理。这样不但可以节省8051的并行I/O接口,而且在大多数不用单行口的情况下,可免于扩展接口。在这种方法中,串行口工作在方式0状态,相当于一个移位寄存器,其输入/输出通过RXD引脚,移位脉冲则由TXD输出。每次输入或输出8位数据(一个字节)。每输出一个字节,8051的硬件即自动使SCON寄存器中的中断TI置位,通过测试TI的状态,即可确定一个字节是否发送完毕。见图1。方案二 并行接口动态显示电路
直接用P0口作线选,P2作位选连接数码显示管。见图2。
方案一中的串行接口动态显示电路显示方法有个很大的缺点,一旦计算机不执行显示程序,则显示立即停止。如要维持显示,则须花费计算机很多时间。而且在本次课程设计中,我们也有足够的I/O口,因此,选择并行接口动态显示电路较好。
.3 LCD液晶显示器的接口方法选择
方案一 以硬件为主的LD显示接口电路
这种接口方法的电路图见图 3,可以看出,在数据总线和LD之间,必须有锁存器或I/O接口电路,此外,还应有专门的译码/。通过译码器把1位十六进制或BCD码译为相应的显示段码,然后由。这种接口方法仅用一条输出指令,就可以进行LD显示。但是所使用的硬件电路较多,而硬件译码缺乏灵活性,只能显示十进制数或十六进制。
方案二 以软件为主的LD显示接口电路
这种接口方法的电路如图 ,它以软件查表代替硬件译码的方法,不但省去了译码器,而且还能显示更多的字符,但是是必不可少的。本次设计采用这种接口电路。
.4液晶显示器限流电阻选择
由于较小,,因此必须加入。有两实现方式,比较如下:
方案,。
方案用系统硬件电路的设计经上述比较,本次作品采用以89C52为核心的单片机最小系统板,显示模块采用数码管动态扫描显示。经过方案论证与比较,选择出最优方案的系统总体方案框图如图5所示。
3.1主控AT89C52
主控模块采用的是单片机芯片。是一个8位单片机,片内ROM全部采用FLASH ROM技术,晶振时钟为12MHz。是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS,通常在VCC和VSS引脚之间接0.1μF高频滤波电容。第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号。电路图见图6。
图6 AT89C52单片机芯片图
3.2 显示模块电路设计
单片机的P2口分别接的显示。而P0用来,所以。电路图见图。系统软件设计
.1 系统软件概述
在编程上,首先进行了初始化,定义程序的入口地址以及中断的入口地址,在主程序的开始定义了一组固定单元用来存储计数的分、秒、年、月、日、星期的存储单元。调用闰年判断程序后,进入主程序中循环。在主程序中,对不同的按键进行扫描,实现秒表,时间调整、开关屏设置等扩展功能。时钟计时利用定时器T0中断子程序实现,秒表和时间调整闪烁程序由定时器T1的中断服务子程序实现。考虑到实用性,在该电子钟的时间调整时采用了闪烁,而开关屏设置采用了符号标志。在自动开、关屏设置子程序中,另外开辟内存单元用来存放开、关屏设置时间,而在另外的子程序中不断比较当前时间是否和设置时间相等并设置标志位,然后程序中检测标志位,从而实现开、关屏操作。见图8。
.2
文档评论(0)