毕业设计-基于汇编语言的at89c52单片机可调数字钟的设计,毕业设计(论文)-基于AT89C52单片机的数字时钟设计汇.doc...

毕业设计(论文)-基于AT89C52单片机的数字时钟设计汇

基于AT89C52单片机的数字时钟设计

摘 要

本文论述了如何利用单片机来设计一个时钟的方法。

本设计基于单片机技术原理,以单片机芯片AT89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个多功能数字时钟系统。单片机扩展的LCD显示器用来显示秒、分、时计数单元中的值。整个设计包括两大部分: 硬件部分和软件部分,以单片机为核心, 配以一定的外围电路和软件。硬件是整个系统的基础, 软件部分则要合理、充分地支持和使用系统的硬件, 从而完成系统所要完成的任务。

本设计采用L ED 数码管的数字显示以其亮度高、显示直观等优点被广泛应用于智能仪器及家用电器等领域。该时钟系统主要由时钟模块、闹钟模块、环境温度检测模块、液晶显示模块、键盘控制模块以及信号提示模块组成。能够准确显示时间(显示格式为时时:分分:秒秒,24小时制),可随时进行时间调整,具有闹钟时间设置、闹钟开/关、止闹功能,能够对时钟所在的环境温度进行测量并显示。设计以硬件软件化为指导思想,充分发挥单片机功能,大部分功能通过软件编程来实现,电路简单明了,系统稳定性高。单片机在这种情况下诞生了基于单片机电子时钟。LCD显示器、液晶显示模块、基于单片机电子时钟Design According To Single Slice The Clock Display Of The Machine

ABSTRACT

This text discusses how to make use of a single slice machine to design the method of a clock.

This design according to single slice machine technique principle, use single slice the machine chip AT89 C52 as core controller, pass the draw up of creation and software procedure of hardware electric circuit, design to create a multi-function and numerical clock system. the single slice machine expand of LCD display use to show second, cent, the chronometer value within few units.The whole design include two greatly part of: Hardware part and software part, with single slice machine for core, go together with with the certain outer circle electric circuit and the software.The hardware is the foundation of the whole system, the software is part of to then want reasonable, adequately support with usage system of hardware, complete system thus want to complete of mission.

This design adoption L ED figures tube of the numeral show high with its bright degree, show to keep a view etc. the advantage be extensively been apply in realms, such as intelligence instrument and home .The clock's system is mainly shown that mold piece, the keyboard control mold piece and signal hint that the mold piece constitute by clock mold piece, alarm clock mold piece, the examination mold piece, LCD of the environment temperature.Can accurate manifestation time(manifestation format is always:The cent divide:

数字电子钟 摘 要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的 各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产 品性能进一步提高,产品更新换代的节奏也越来越快。 现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些 对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码 管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读 数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。 数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。数字钟的精度、 稳定度远远超过老式机械钟。在这次设计中,我们采用LED数码管显示时、分、秒,以24 小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定 时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。数字 钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱, 因此得到了广泛的使用。 关键字:数字电子钟 单片机 目 录 第一章 绪论 1.1 数字电子钟的背景…………………………………………………………………… 1 1.2 数字电子钟的意义…………………………………………………………………… 1 1.3 数字电子钟的应用…………………………………………………………………… 1 第二章 整体设计方案 2.1 单片机的选择…………………………………………………………………………… 2 2.2 单片机的基本结构……………………………………………………………………… 4 第三章 数字钟的硬件设计 3.1 最小系统设计…………………………………………………………………………… 9 3.2 LED显示电路…………………………………………………………………………… 12 3.3 键盘控制电路…………………………………………………………………………… 14 第四章 数字钟的软件设计 4.1 系统软件设计流程图…………………………………………………………………… 16 4.2 数字电子钟的原理图…………………………………………………………………… 20 4.3 主程序…………………………………………………………………………………… 20 4.4 时钟设置子程序………………………………………………………………………… 21 4.5 定时器中断子程序……………………………………………………………………… 21 4.6 LED显示子程序………………………………………………………………………… 22 4.7 按键控制子程序………………………………………………………………………… 24 第五章 系统仿真 5.1 PROTUES软件介绍……………………………………………………………………… 26 5.2 电子钟系统PROTUES仿真……………………………………………………………… 26 第六章 调试与功能说明 6.2 系统性能测试与功能说明……………………………………………………………… 27 6.3 系统时钟误差分析……………………………………………………………………… 27 6.1 硬盘调试………………………………………………………………………………… 27 6.4 软件调试问题及解决…………………………………………………………………… 27 结束语………………………………………………………………………………………….29 参考文献………………………………………………………………………………………30 致谢……………………………………………………………………………………………..31
下面是一个简单的AT89C52单片机电子时钟的时分秒汇编语言代码: ``` ; AT89C52单片机电子时钟时分秒汇编语言代码 ; 使用定时器0和定时器1来计时,1秒钟中断一次 ORG 0H ; 程序入口地址 MOV TMOD, #00100001B ; 设置定时器0为模式1,定时器1为模式2 MOV TH0, #0B1H ; 定时器0计数初值 MOV TL0, #0AEH ; 定时器0计数初值 MOV TH1, #0C2H ; 定时器1计数初值 MOV TL1, #0F7H ; 定时器1计数初值 SETB EA ; 全局中断使能 SETB ET0 ; 定时器0中断使能 SETB ET1 ; 定时器1中断使能 MOV A, #0 ; 初始化时分秒为0 MOV R0, A ; 秒 MOV R1, A ; 分 MOV R2, A ; 时 MAIN: ; 此处可以添加其他代码 SJMP MAIN ; 无限循环 TIMER0_ISR: ; 定时器0中断服务程序 CLR TF0 ; 清除定时器0中断标志位 INC R0 ; 秒加1 CJNE R0, #60, SKIP_MINUTE ; 秒不等于60则跳过 MOV R0, #0 ; 秒清零 INC R1 ; 分加1 CJNE R1, #60, SKIP_HOUR ; 分不等于60则跳过 MOV R1, #0 ; 分清零 INC R2 ; 时加1 CJNE R2, #24, SKIP_DAY ; 时不等于24则跳过 MOV R2, #0 ; 时清零 SKIP_DAY: SKIP_HOUR: SKIP_MINUTE: RET ; 返回 TIMER1_ISR: ; 定时器1中断服务程序 CLR TF1 ; 清除定时器1中断标志位 MOV TH0, #0B1H ; 定时器0计数初值 MOV TL0, #0AEH ; 定时器0计数初值 RET ; 返回 ``` 上述代码使用了定时器0和定时器1来计时,其中定时器0用来计秒,定时器1用来定时1秒。在定时器0的中断服务程序中,每次秒加1,如果秒等于60,则秒清零、分加1,如果分等于60,则分清零、时加1,如果时等于24,则时清零。在定时器1的中断服务程序中,每隔1秒定时器0会产生中断,所以需要重新设置定时器0的计数初值。 这个电子时钟还可以加入显示模块,通过数码管或LCD显示出当前时间。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值