基于单片机控制的时钟控制器
- 格式:doc
- 大小:182.50 KB
- 文档页数:16
目录第一章引言 (3)选题背景及其意义 (3)877A单片机的介绍 (3)设计要求及其功能 (4)本设计实现的功能 (4)第二章系统整体方案 (5)系统整体方案框图 (5)设计要求 (5)按照设计要求画出系统框图 (5)控制系统时刻分析表 (6)处置器的选择 (6)时钟芯片的选择 (7)液晶显示器的选择 (7)第三章硬件部份的设计 (7)系统部份 (7)键盘接口电路 (8)显示部份 (9)第四章控制系统软件部份 (10)软件介绍 (10)程序流程图 (11)按键的扫描子程序 (12)铃声控制程序 (12)仿真电路 (13)第五章总结 (15)参考文献 (16)致谢 (16)基于单片机的可编程作息时刻控制器的设计何欢(伊犁师范学院电子与信息工程学院电子信息科学与技术09-2班,新疆伊宁市 835000)摘要:本设计是作息时刻控制器,由单片机最小系统、按键模块、数码管显示模块、铃声模块组成。
采用PIC16F877A单片机、主频4MHZ晶振,通过按键STATE、TEN、UNIT控制时刻的校正时刻和铃声设定;数码管显示模块用来显示时刻,显示格式为“时分”,并能够按照需要显示年、月、日,由数码管小数点闪动作为秒计数;铃声模块进行到时提示并出相应动作:发光二极管闪亮,同时播放音乐。
时钟芯片采用的是DS1302,此芯片是DALLAS 公司推出的涓流充电时钟芯片,其内含有一个实不时钟/日历和31 字节静态RAM,并通过简单的串行接口与单片机进行通信。
实不时钟/日历电路提供秒、分、时、日、日期、月、年的信息,每一个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM 指示决定采用24 或12 小时格式。
DS1302 工作时功耗很低,维持数据和时钟信息时功率小于1mW。
该设计采用C语言编写程序,由于汇编语言的移植性比较差,而C语言则比较灵活,许多子函数都能够直接移植过去。
关键词:PIC16F877A单片机;晶振;液晶显示器;源程序Based on single chip microcomputer controller design ofprogrammable calendarHehuan(ili normal college of electronic and information engineering college of electronic information science and technology 09-2 class, xinjiang yining city, 835000 )Abstract:This is the time schedule controller designed by single chip microcomputer minimum system module, buttons, digital tube display module, alarm module. Using PIC16F877A MCU, 4 MHZ crystal vibration main frequency, through the button STATE, TEN, UNIT control time correction time and set ring; Digital tube display module is used to display time, display format of"time", and can according to need to display year, month, day, by the digital tube decimal counting flashing as seconds; Bell module to remind and make the corresponding action: light-emitting diodes, play music at the same time.Used clock chip DS1302, this chip is DALLAS company to launch a trickle charging the clock chip, containing a real-time clock/calendar and 31 bytes static RAM, and communicate with single chip microcomputer with simple serial interface. Real-time clock/calendar circuit provides seconds, minutes, and information day, date, month, year, number of days per month and leap year the number of days can be automatically adjusted, clock operation by an AM/PM indicator decided to adopt 12 or 24 hour format. DS1302 power consumption is low, while working to keep data and clock information when the power is less than 1 mw.This design USES the C language program, due to the portability of assembly language, but C is more flexible, Many functions can be directly transplanted in the past.Keywords: PIC16F877A MCU;crystals and liquid crystal display; the source program第一章引言选题背景和意义自从人类学会计时开始,计时方式由在木棍和骨头上刻标记,随着人类的智慧的进展,到后面利用计时工具不断的改良,由最开始的圭表、日晷、漏壶、漏箭、机械闹钟、秒表、沙漏、怀表、自摆钟、石英钟等。
基于51单片机的多功能电子钟设计1. 本文概述随着现代科技的发展,电子时钟已成为日常生活中不可或缺的一部分。
本文旨在介绍一种基于51单片机的多功能电子钟的设计与实现。
51单片机因其结构简单、成本低廉、易于编程等特点,在工业控制和教学实验中得到了广泛应用。
本文将重点阐述如何利用51单片机的这些特性来设计和实现一个具有基本时间显示、闹钟设定、温度显示等功能的电子钟。
本文的结构安排如下:将详细介绍51单片机的基本原理和特点,为后续的设计提供理论基础。
接着,将分析电子钟的功能需求,包括时间显示、闹钟设定、温度显示等,并基于这些需求进行系统设计。
将详细讨论电子钟的硬件设计,包括51单片机的选型、时钟电路、显示电路、温度传感器电路等。
软件设计部分将介绍如何通过编程实现电子钟的各项功能,包括时间管理、闹钟控制、温度读取等。
本文将通过实验验证所设计的电子钟的功能和性能,并对实验结果进行分析讨论。
通过本文的研究,旨在为电子钟的设计提供一种实用、经济、可靠的方法,同时也为51单片机的应用提供一个新的实践案例。
2. 51单片机概述51单片机,作为一种经典的微控制器,因其高性能、低功耗和易编程的特性而被广泛应用于工业控制、智能仪器和家用电器等领域。
它基于Intel 8051微处理器的架构,具备基本的算术逻辑单元(ALU)、程序计数器(PC)、累加器(ACC)和寄存器组等核心部件。
51单片机的核心是其8位CPU,能够处理8位数据和执行相应的指令集。
51单片机的内部结构主要包括中央处理单元(CPU)、存储器、定时器计数器、并行IO口、串行通信口等。
其存储器分为程序存储器(ROM)和数据存储器(RAM)。
程序存储器通常用于存放程序代码,而数据存储器则用于存放运行中的数据和临时变量。
51单片机还包含特殊功能寄存器(SFR),用于控制IO端口、定时器计数器和串行通信等。
51单片机的工作原理基于冯诺伊曼体系结构,即程序指令和数据存储在同一块存储器中,通过总线系统进行传输。
基于51单片机的电子时钟设计
摘要:本文论述了基于51单片机的电子时钟设计,包括硬件设计与软件编程。
其中,硬件设计包括基本指示灯、DS1302时钟芯片等的选择与连接,时钟电路、晶振电路的设计等。
软件编程包括时钟显示的实现,时钟校准、闹钟等功能的实现等。
本设计具有精度高、操作简便、易于实现等特点,可广泛应用于各种场合。
关键词:51单片机;电子时钟;硬件设计;软件编程
前言
随着人们生活水平的提高,电子时钟已经成为人们生活中必不可少的物品,目前市场上各种类型的电子时钟层出不穷。
本文以51单片机为基础,设计了一款高精度、易于操作的电子时钟,采用DS1302时钟芯片作为时钟驱动芯片,实现了时钟的准确显示、校准、闹钟等功能。
硬件设计
硬件设计主要包括控制器、时钟驱动、显示装置以及电源。
本设计采用了AT89C51单片机作为控制器,一块DS1302时钟芯片作为时钟驱动,LED数字管作为显示装置。
同时,本设计采用了USB供电方式,其电源电压为5V。
软件编程
软件编程主要包括时钟显示、时钟校准、闹钟功能的实现等。
时钟显示采用了动态显示方式,实现了时间的精确定位。
同时,本设计还具有时钟校准功能,在程序接通时,可自动对时钟进行校准,保证时钟的精确度。
此外,本设计还具有设置闹钟的功能,用户可在指定时间响起闹钟。
结论本文以51单片机为基础,设计了一款高精度、易于操作的电子时钟。
通过对硬件设计、软件编程的设计与实现,使得该产品能够准确显示时间,保证了时钟的稳定性,满足了时间的要求,目前已
得到广泛应用。
中图分类号:基于单片机控制的电子时钟设计专业名称:应用电子技术****:***导师姓名:王春霞职称:讲师焦作大学机电工程学院2012年 12 月中图分类号:密级:UDC:单位代码:基于单片机控制的电子时钟设计Based on single-chip microcomputer control the design of the electronic clock焦作大学机电工程学院摘要现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。
对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。
数码管显示的时间简单明了而且读数快、时间准确显示到秒。
所以数字电子钟的精度、稳定度远远超过老式机械钟。
而机械式的依赖于晶体震荡器,可能会导致误差。
在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,以AT89S51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由4.5V直流电源供电,通过数码管能够准确显示时间,调整时间,并在数码管上显示相应的时间。
关键词:单片机 AT89S51 电子时钟ABSTRACTModern life people pay more and more attention to up the concept of time, can say time and money off the equal sign. For those who grasp of time is very strict and accurate person or thing, it is not accurate time will bring very big trouble, so to digital tube for display clock than pointer clock showed a lot of advantages. Digital tube display time simple and fast reading, time accurate display to seconds. So the digital clock accuracy, stability is far more than the old mechanical clock. And mechanical dependent on the crystal oscillators, may lead to error. In this design, we adopt LED digital tube display, points, SEC to 24 hours time way, according to the principle of dynamic display of digital tube to show that AT89S51 chip as the core, with the necessary circuit, design a simple electronic clock, it consists of 4.5 V dc power supply, through the digital tube can accurately display the time, adjusting time, and in the digital tube display the corresponding time.Key word:SCM AT89S51 electronic clock目录第一章引言 (1)1.1数字电子钟的背景 (1)1.2数字电子钟的意义 (1)1.3数字电子钟的应用 (1)第二章设计方案 (3)2.1数字时钟方案 (3)2.2数码管显示方案 (3)第三章系统设计 (4)3.1总体设计 (4)3.2单片机外围控制电路 (4)3.2.1单片机的选择 (4)3.2.2控制电路 (6)3.2.3电源部分 (7)3.2.4复位电路 (8)3.2.5程序下载接口 (8)3.2.6位选部分 (9)3.2.7数码管的连接电路 (9)第四章软件设计 (11)4.1程序流程图 (11)4.2源程序 (13)第五章使用调试 (20)第六章设计总结 (21)参考文献 (22)附录 (23)致谢 (24)第一章引言1.1数字电子钟的背景20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
基于51单片机的电子时钟设计51单片机是一种广泛应用于嵌入式系统的微控制器,由于其性能稳定、易于编程和成本相对较低的特点,被广泛应用于各种电子设备中。
在现代社会,电子时钟已经成为人们日常生活中不可或缺的工具。
随着科技的不断发展,电子时钟在功能和外观上都得到了极大的提升,如今的电子时钟不仅可以显示时间,还能设置闹钟、定时、显示温湿度等功能。
本文通过对51单片机的应用和实践,设计了一款功能丰富的电子时钟,旨在探讨如何利用51单片机实现电子时钟的设计与制作过程。
首先,我们将介绍51单片机的基本原理和特点。
51单片机是一种8位微控制器,由Intel公司于1980年推出,至今已有数十年的历史。
它采用哈佛结构,具有较高的工作速度和稳定性,适合用于各种嵌入式系统。
51单片机的指令系统简单,易于学习和掌握,因此被广泛用于各种嵌入式应用中。
除此之外,51单片机的外围设备丰富,可以通过外部扩展模块实现各种功能,如串口通信、定时器、数模转换等,这也为我们设计电子时钟提供了便利。
其次,我们将详细介绍基于51单片机的电子时钟的设计和实现过程。
电子时钟主要由时钟模块、显示模块、闹钟模块等部分组成,通过合理的接线和程序设计实现各种功能。
首先,我们设计时钟模块,通过外部晶振产生时钟信号,并利用51单片机的定时器模块实现时间的精确计算和显示。
同时,我们还设计了显示模块,采用数码管或液晶屏显示时间和日期信息,通过数字或字符的组合,使信息直观清晰。
此外,闹钟模块也是电子时钟的重要功能之一,我们可以设置闹钟时间,并在设定时间触发闹钟功能,提醒用户。
通过合理的程序设计,我们可以实现电子时钟的各种功能,并提升用户体验。
最后,我们将讨论基于51单片机的电子时钟在实际生活中的应用前景和发展趋势。
随着智能家居的快速发展,电子时钟作为家庭必备的电子设备,其功能和外观需求也在不断提升。
未来,基于51单片机的电子时钟将会更加智能化,可以与手机、电视等智能设备联动,实现更多个性化的功能。
文章标题:基于单片机的作息时间控制器设计参考文献在当今社会中,人们的生活节奏越来越快,作息时间管理成为了一项越来越重要的关注点。
而基于单片机的作息时间控制器设计正是一个应对这一挑战的解决方案。
本文将从深度和广度的角度,对基于单片机的作息时间控制器设计进行综合评估,并为读者提供有价值的参考文献。
一、引言基于单片机的作息时间控制器设计是以单片机为核心的一种智能化时间管理系统,旨在帮助人们合理安排作息时间,提升生活质量。
本文将围绕这一主题展开探讨,并提供深入的参考文献。
二、单片机技术在作息时间控制中的应用1. 单片机技术的基本原理及特点单片机是一种集成了微处理器、内存和I/O接口的芯片,具有体积小、功耗低、成本低等特点,适用于作息时间控制器的设计。
2. 基于单片机的作息时间控制器设计原理基于单片机的作息时间控制器设计主要包括硬件设计和软件设计两个方面,其中硬件设计包括时钟电路、显示模块等,软件设计包括时间设置、定时功能等。
3. 单片机技术在作息时间控制中的优势相比传统的作息时间控制器,基于单片机的设计具有更高的稳定性、更大的灵活性和更丰富的功能,能够更好地满足人们对作息时间管理的需求。
三、基于单片机的作息时间控制器设计的发展现状1. 相关领域的研究现状当前,基于单片机的作息时间控制器设计已经在家居领域、办公场所等得到了广泛的应用,并逐渐向智能化、网络化方向发展。
2. 研究热点和难点在基于单片机的作息时间控制器设计领域,研究人员主要关注于提升系统的稳定性、完善用户体验、降低成本等方面,同时也面临着软硬件协同设计、能耗管理等难点。
四、基于单片机的作息时间控制器设计的关键技术和挑战1. 关键技术在基于单片机的作息时间控制器设计中,关键技术包括低功耗设计、嵌入式系统设计、数据通信技术等,这些技术的应用将直接影响到系统的性能和稳定性。
2. 挑战基于单片机的作息时间控制器设计面临着功耗管理、通信协议兼容性等挑战,同时在用户需求多样化和市场竞争激烈的情况下,如何设计出满足市场需求的作息时间控制器也是一个巨大的挑战。
高等教育自学考试毕业论文学生姓名:林于舜考籍号:911411101557专业年级:题目:基于单片机的作息时间控制钟系统指导教师:桂玲讲师评阅教师:年月目录1 引言 (3)1.1作息时间控制钟系统概述 (3)1.2本设计任务和主要内容 (4)2 系统主要硬件电路设计 (5)2.1 单片机总体设计原理 (5)2.2 各功能模块分析 (5)2.2.1 SPCE061A性能简介 (5)2.2.2 扩展部分实现 (8)3 系统软件设计 (9)3.1 软件主程序 (9)3.2 软件主要子程序 (10)3.2.1 键盘扫描子程序 (10)3.2.2 万年历计算子程序 (10)3.2.3 校时子程序 (11)3.2.4 播放语音子程序 (12)4 系统调试 (14)4.1 调试 (14)4.1.1 软件调试 (14)4.1.2 硬件调试 (14)4.1.3 软硬联调 (14)5 结束语 (15)参考文献 (16)我已给你调好了标题,自动生成目录,加上附录一:你设计的硬件电路图,附录二:软件程序摘要本设计是一个具有报时功能的作息时间控制钟。
它利用SPCE061A单片机的2Hz 时基计时,进行年历计算,并用SPCE061A的语音功能将它报出来;在进行时间计算,分每加一时,都与规定的作息时间比较,如果相等则进行相应的控制或动作。
本设计是一个具有报时功能的作息时间控制钟。
它利用SPCE061A单片机的2Hz时基计时,进行年历计算,并用SPCE061A的语音功能将它报出来;在进行时间计算,分每加1时,都与规定的作息时间比较,如果相等则进行相应的控制或动作。
SPCE061A的DAC 为电流型输出,经负载电阻R1、三极管Q1放大驱动扬声器SPEAKER放音,SPEAKER可选用4Ω或8Ω扬声器。
IOA15接一个LED,到规定的作息时间用LED闪烁来表示,使用者可根据具体需要来控制电铃、播放提示语等。
凌阳芯片的工作电压为3.3v,我们给出了获得工作电压两种方法。
基于STC89C52单片机时钟的设计与实现1. 本文概述本文主要介绍了基于STC89C52单片机和DS1302时钟芯片的电子时钟设计与实现。
该电子时钟系统具有年月日等基本时间显示功能,并集成了秒表计时处理、闹钟定时、蜂鸣器和温度显示等附加功能。
系统采用LCD1602作为液晶显示器件,通过单片机对时钟和温度等数据进行处理后传输至LCD进行显示。
用户可以通过按键对时间进行调节,同时,单片机还通过扩展外围接口实现了温度采集等功能。
本文的目标是提供一个功能丰富、易于操作的电子时钟系统,为学习和应用单片机技术提供一个实用的案例。
2. 系统设计要求在设计基于STC89C52单片机的时钟系统时,我们需要考虑以下几个关键的设计要求:时钟系统必须具备基本的时间显示功能,能够以小时、分钟和秒为单位准确显示当前时间。
系统还应支持设置闹钟功能,允许用户设定特定的时间点进行提醒。
系统需要保证长时间稳定运行,具备良好的抗干扰能力,确保在各种环境下都能准确计时。
还应具备一定的容错能力,即使在操作失误或外部干扰的情况下,也能保证系统的正常运行。
用户界面应简洁直观,便于用户快速理解和操作。
时钟的显示部分应清晰可见,即使在光线较暗的环境下也能保持良好的可视性。
同时,设置和调整时间的操作应简单易懂,方便用户进行日常使用。
在设计时钟系统时,应考虑到未来可能的功能扩展,如温度显示、日期显示等。
系统的设计应具有一定的灵活性和扩展性,以便在未来可以轻松添加新的功能模块。
鉴于时钟系统可能需要长时间运行,能耗是一个重要的考虑因素。
设计时应选择低功耗的元件,并优化电源管理策略,以延长电池寿命或减少能源消耗。
在满足上述所有要求的同时,还需要控制成本,确保产品的市场竞争力。
这可能涉及到对单片机的编程优化、选择性价比高的外围元件等措施。
通过满足上述设计要求,我们可以确保开发出一个功能完善、稳定可靠、用户友好、易于扩展、节能环保且成本效益高的STC89C52单片机时钟系统。
基于STC89C52单片机的电子时钟研究一、本文概述本文旨在研究和探讨基于STC89C52单片机的电子时钟设计与实现。
STC89C52单片机作为一种高效、稳定的微控制器,在嵌入式系统设计中具有广泛的应用。
通过对其内部资源的合理配置与外部硬件电路的设计,我们可以构建出功能丰富、性能稳定的电子时钟系统。
本文将详细介绍电子时钟的硬件电路设计、软件编程、功能实现以及性能优化等方面的内容,旨在为相关领域的研究者和实践者提供有益的参考和借鉴。
在硬件电路设计方面,我们将围绕STC89C52单片机的核心功能,设计包括时钟显示、按键输入、时钟校准等功能的电路模块。
在软件编程方面,我们将采用C语言进行程序编写,实现时钟的计时、显示、控制等功能。
我们还将对电子时钟的功耗、稳定性、精度等性能进行优化和提升,以满足实际应用的需求。
通过本文的研究和探讨,我们期望能够为STC89C52单片机在电子时钟设计中的应用提供有益的思路和方法,同时也为推动嵌入式系统设计和技术发展做出一定的贡献。
二、STC89C52单片机在电子时钟设计中的应用优势STC89C52单片机在电子时钟设计中具有显著的应用优势,其独特的特性和功能使其成为电子时钟设计的理想选择。
STC89C52单片机具有较高的集成度和可靠性,能够在较小的空间内实现复杂的功能,并且具有良好的稳定性,保证了电子时钟的长期稳定运行。
STC89C52单片机具有丰富的I/O接口和扩展能力,方便与其他硬件模块进行连接和通信。
这使得电子时钟设计更加灵活,可以根据实际需求添加各种功能模块,如温度显示、日期提醒等,提高了电子时钟的实用性和便利性。
STC89C52单片机还具有低功耗的特点,能够在保证性能的同时降低能耗,延长电子时钟的使用寿命。
其编程简单易懂,便于开发人员快速上手,降低了开发成本和时间。
STC89C52单片机在电子时钟设计中具有集成度高、可靠性好、扩展能力强、低功耗和编程简单等优势,使得其在电子时钟领域得到了广泛应用。
基于单片机的智能闹钟设计摘要:本文通过单片机来实现电子打铃系统。
基于单片机的智能闹钟设计包括:电源电路,单片机最小系统及扩展LCD显示电路,4*4矩阵键盘电路,打铃系统电路。
本设计采用C语言编程,使用模拟软件驱动电路以实现其设计的各项功能。
本文主要介绍了在设计过程中智能数字闹钟的软、硬件部分及在设计调试过程中遇到的一些问题以及解决方法。
关键词:单片机;智能数字闹钟;电子打铃系统1Intelligent alarm clock design based on MCU Abstract:In this paper, through the microcontroller to achieve electronic bell system. Includes a smart alarm clockdesign based on SCM: power supply circuit, MCU minimum system and the expansion of LCD display circuit,4*4 matrix keyboard circuit, bell system circuit. This design uses the C language programming, the use of simulation software with the driving circuit designed to achieve the various functions. This paper mainly introduces the soft,hardware part of intelligent digital alarm clock in the design process and some problems in the design of the process of debugging and solutions. Keywords: Single-Chip Microcomputer; Intelligent digital alarm clock; bell system2目录第一章前言 (1)1.1前言 (1)1.2需求分析 (2)1.3指标及技术 (3)1.4实现功能方法 (3)第二章硬件设计 (5)2.189C51内部结构简介 (5)2.2外部接口设备介绍 (6)2.2.1矩阵式键盘 (6)2.2.2 矩阵式键盘的结构与工作原理 (6)2.2.3 矩阵式键盘的按键识别方法 (7)2.2.4 液晶显示模块概述 (7)2.3电路设计 (8)2.3.1.接口电路 (8)2.3.2.电源电路 (8)2.3.3.打铃系统电路 (8)2.3.4.整个系统电路 (8)2.4电路图中硬件介绍 (8)2.4.1 继电器 (8)2.4.2 MAX232 (9)2.4.3 DS1302 (9)第三章软件设计 (12)3.1.电路原理图的设计步骤 (12)3.2软件过程设计 (12)3.2.1程序流程图 (12)3.2.2 4*4矩阵键盘 (14)3.2.3 DS1302时钟芯片 (15)第四章系统的组装与调试 (18)4.1硬件的组装与调试 (18)4.1.1 焊接技术的介绍 (18)4.2软件调试 (18)4.2.1 使用工具的熟悉 (18)4.2.2 软件编程 (19)第五章结论 (20)参考文献..................................................................... - 21 -I第一章前言1.1 前言21世纪是信息时代,电子技术的飞速发展,令单片机以其体积小,价格低,在工业控制,自动化,家用电器,智能仪器仪表,航空航天,通信,导航,车载功能齐全,性价比高等优点在电子领域日益广泛的应用了起来。
单片机控制的时钟控制器课程设计任务书1.设计目的与要求设计出一个用单片机控制的时钟控制器。
准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能:(1)显示:可以显示时、分和秒。
(2)调时功能:时(0-24)、分和秒(0-60)可以连续可调)。
(3)性能:时间日误差< 2秒。
(4)扩展功能:增加整点报时功能、增加闹钟任意设定功能。
2.设计内容(1)画出电路原理图,正确使用逻辑关系;(2)确定元器件及元件参数;(3)进行电路模拟仿真;(4)SCH文件生成与打印输出;3.编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。
4.答辩在规定时间内,完成叙述并回答问题。
目录1引言 (1)2总体设计方案 (1)2.1设计思路 (1)2.1.1软时钟的原理 (1)2.1.2数码管的显示 (1)2.2总体设计框图 (2)3设计原理分析 (2)3.1单片机最小系统的分析 (2)3.2时间显示电路的设计 (3)3.3时间调整电路和指示电路设计 (4)3.4报警电路设计 (4)3.5系统软件设计 (5)4结束语 (6)参考文献 (6)附录(一) (7)附录(二) (8)单片机控制的时钟控制器摘要:本设计主要利用A T89S51和显示电路构成,硬件电路简单但时钟准确误差小。
AT89S51体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。
这次单片机课程设计通过对它的学习与应用,从而达到学习、设计、开发软、硬件的能力。
随着电子技术产业结构的调整,生产工艺的飞速发展,人们生活水平的不断提高,家用电器逐渐普及,市场对于智能时钟控制系统的需求也越来越大。
本文所述的智能时钟控制系统主要指时钟显示、时间设置、闹铃(可扩展功能)等控制系统。
关键词:A T89S51单片机时钟电路74LS1641 引言数字时钟是生活中不可少的必需品数字钟是采用AT89S51和显示电路构成实现对时,分,秒.数字显示的计时装置,硬件电路简单但时钟准确误差小。
AT89S51体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。
这次单片机课程设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
随着电子技术产业结构调整,生产工艺的飞速发展,人们生活水平的不断提高,家用电器逐渐普及,市场对于智能时钟控制系统的需求也越来越大。
本文所述智能时钟控制系统主要指时钟显示、时间设置、闹铃(可扩展功能)等控制系统。
钟表的数字化以及很多功能的不断扩展给人们生产生活带来了极大的方便,不仅仅只有报时功能而且也增加了定时自动报警、时间程序自动控制、定时开关机家用电器、通断动力设备等。
2 总体设计方案2.1 设计思路采用单片机设计的电子时钟通常有两种方法:一是通过单片机内部的定时器/计数器,采用软件编程实现时钟计数,一般称为软时钟。
这种方法硬件线路简单,系统的功能一般与软件设计相关,通常用在对时间精度要求不高的场合。
二是采用时钟芯片,它的功能强大,功能部件集成在芯片内部,自动产生时钟等相关功能。
这种方法硬件成本相对较高,但软件编程较简单,通常用在对时钟精度要求校高的场合。
由于本设计对时钟的误差要求不高所以采用第一种方案。
2.1.1软时钟的原理软时种是利用AT89S51内部的定时器/计数器来实现的,它的处理过程如下:首先设定单片机内部的一个定时器/计数器工作于定时方式,对机器周期计数形成基准时间10ms然后用对10ms进行循环100次为1秒,秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。
“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。
“时计数器”采用24进制计时器,可实现对一天24小时的累计。
显示电路将“时”、“分”、“秒”计数器的输出,通过六个七段LED显示器显示出来。
校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整。
2.1.2 数码管的显示数码管的显示可以采用两种方法:一是静态显示方式所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定地导通或截止。
二是动态显示方式所谓动态显示,就是将要显示的多位LED显示器采用一个8位的段选端口,然后采用动态扫描方式一位一位地轮流点亮各位显示器。
由于人眼视觉的暂留性,当数码管重复的频率达到一定程度时看上去显示效果很稳定。
由于采用动态显示方式时占用单片机的资源较多且电路连接时较复杂做板时跳线较多所以本设计采用第一种方法静态显示方式。
2.2 总体设计方框图单片机控制的时钟控制器由单片机及最小系统、时间显示电路、时间调整电路、报警电路组成。
单片机最小系统是单片机工作的前提条件必需保证最小系统的正常工作才能再继续扩展其它功能。
单片机最小系统包括复位电路、晶振电路、以及AT89S51的31脚接高电平。
时间调整电路是为调整时、分、秒的正确性而设置的。
数码管显示电路采用6个七段数码管显示。
报警电路采用蜂鸣器。
设计总体框图如图1所示。
图1 总体框图3 设计原理分析3.1 单片机最小系统的分析最小系统一般包括:单片机、晶振电路、复位电路。
复位电路由电容串联电阻构成,由图并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位.一般C 取10u,R取8.2K.而手动复位一般C取22u,R1取200,R2取1k原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平。
晶振电路:典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的uS级时歇,方便定时操作)。
特别注意:对于31脚(EA/Vpp),当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行。
单片机最小系统原理如图2所示。
图2 单片机最小系统3.2 时间显示电路的设计时间显示电路采用静态显示,利用74HC164来驱动,数码管显示,74HC164是串行输入并行输出的移位寄存器,并带有清除端,其中Q0-Q7为并行输出端,MR为清除端,当它为零电平时使74HC164清零,A、B为串行输入端,CLK为时钟脉冲输入端,在脉冲的上升沿实现移位。
当CLK=0、MR=1时,74HC164保持原来的数据状态。
图中外接6片74HC164作为6位LED显示器的静态连接口,74HC164的低电平输出电流为8MA,可直接驱动共阳极LED。
采用软件译码向74HC164输出字型码,由于显示器是静态的主程序可不必扫描显示器。
直接由单片机的串行口输出数据和时钟控制信号达到静态显示的目的。
时间显示电路如图3所示。
图3 时间显示电路3.3 时间调整电路和指示电路设计时间调整电路采用了四个独立连接式按键该电路采用查询方式,当任何一个键按下时,与之相连的输入数据线即被清0(低电平),而平时该线为1(高电平)。
其中S1是时间开始按键,当S1按下时时钟开始工作,初始值设定在0点整,当需要改变时间时,应按下S2,该键是时、分、秒之间的切换,当S2按下时,显示电路中,秒的位置处于闪烁状态,处于当前可调,当再次按下该键时,显示电路的分应闪烁,处于当前可调,第三次按下时,显示电路中的时闪烁处于可调状态。
当时或分被S2激活可调时,按下S3可对其进行加1调整,按下S4可对其进行减1调整长按S3或S4时可以快速加或减调整。
时间调整电路如图4所示。
指示电路当时钟加电后按下S1键后时间开始正常工作时,AT89S51的P2.7低电平从而工作指示灯D0发光指示正常运行状态。
而D1、D2、D3、D4分别为S1、S2、S3、S4的按键指示灯。
指示电路如图5所示。
P1.2P1.0图4 时间调整电路图5 指示电路3.4报警电路设计报警电路由于PNP三极管和蜂鸣器组成电路。
当时钟设置闹铃或在整点时,当单片机使P0.6口置0时,P0.6接晶体管T1(8850)的基极输入端,从而使蜂鸣器发出报警的声音。
P0.6图6 报警电路3.5系统软件设计主程序首先是初始化部分,主要是计时单元清零,中断初始化,启动定时器工作,然后是调用显示子程序,接着是判断有无按键。
无按键则回到调用显示子程序处;有按键,则执行按键处理子程序,执行完后回到调用显示子程序处,重复循环。
主程序流程图如图7所示。
为了保证系统的可靠运行,在主程序之外还增加了定时中断程序。
电子钟的记时是用单片机内部的定时计数器T0,定时10ms,100次中断即为1s,60s为1min,60min为1h,24h为1天,如此循环,从而实现记时功能。
程序流程图如图8所示图7 主程序流程图 图8 中断程序流程图4 结束语从这次实习中我感受到对于硬件的设计以及制作电路板都还算顺利,自已的不足之处由于单片机已经很长时间没有看过了所以对很多常用的汇编语言指令不太熟悉,以至于在调制程序时多次出错。
比如在这次时钟设计中本想认为可以将整点报时和闹铃功能都能实现呢可是光编程就花费了我9天的时间,本次时钟设计主要利用软件来完成功能。
如果在要求时报电路较高的场所可以用时钟芯片来设计出精确的时钟,另外加上语单芯片可以完成整点报时和闹铃的功能。
在本设计中虽然说有些简单但是时钟还是很准确的,电路简单稳定,不受外界的干扰环境的影响,充分发挥软件编程的优点,减小因元器件精度不够引起的误差。
参考文献[1] 李朝青.单片机原理及接口技术(第三版)[M].北京:北京航空航天大学出版社,2005.9 [2] 夏路易,石宗义.电路原理图与电路设计教程Protel 99SE[M].北京:北京希望电子出版社,2002 [3] 张桂红.单片机原理与应用[M].福州:福建科学技术出版社,2007.2 [4] 汪道辉.单片机系统设计与实践[M].北京:电子工业出版社,2006.6[5] 孙涵芳.MCS-51系列单片机原理及应用[M].北京:北京航空航天大学出版社,1994 [6] 周航慈.单片机应用程序设计基础[M].北京:电子工业出版社,1997年7月附录(一)图9 总体原理图附录(二)ORG 0000HAJMP MAIN ; 转到主程序ORG 000BHAJMP SERVE ; 转到中断程序;*********************主程序************************* MAIN: MOV TMOD ,#01HMOV R0 ,#31HMOV 30H ,#00MOV R6 ,#00MOV R7 ,#00m_sec EQU 20H ;毫秒单元sec EQU 21H ;秒单元min EQU 22H ;分单元hour EQU 23H ;时单元SPEAK BIT P0.6 ;蜂鸣器LED1 BIT P2.7 ;按键指示灯LED2 BIT p2.6LED3 BIT p2.4LED4 BIT p2.3LED5 BIT p2.2SK1 BIT P1.0 ;数字钟开始键SK2 BIT P1.1 ;数字钟调整时间部分切换键 SK3 BIT P1.2 ;数字钟调整时间加1键SK4 BIT P1.3 ;数字钟调整时间减1键SETB ET0 ;允许T0中断SETB EA ;允许CPU中断MOV TH0 ,#0D8HMOV TL0 ,#0F0H ;赋计数器初值MOV m_sec ,#00 ;毫秒单元清零MOV sec ,#00 ;秒单元清零MOV min ,#00 ;分单元清零MOV hour ,#00 ;时单元清零SETB TR0LCALL RETURN ;调用显示程序;*****************数字钟按键程序*****************;*****************开始键************************S1: JB SK1 ,S2 ;数字钟开始键LCALL DL10msJB SK1 ,S2CLR LED1JNB SK1 ,$SETB TR0MOV 30H ,#00MOV R7 ,#00;****************调整时间部分切换键********************S2: MOV A ,30HCJNE A ,#00 ,NET6JB SK2 ,S3 ;数字钟调整时间部分切换键 LCALL DL10msJB SK2 ,S3CLR SPEAKCLR LED2INC 30HJNB SK2 ,$SETB SPEAKSETB LED2INC R7CLR TR0SJMP NET7NET6: JB SK2 ,NET7LCALL DL10msJB SK2 ,NET7CLR SPEAKCLR LED3INC 30HJNB SK2 ,$SETB SPEAKSETB LED3INC R7NET7: CJNE R7 ,#1 ,NET1LCALL MSH ;分闪烁SJMP S3NET1: MOV R7 ,#0LCALL HSH ;时闪烁SJMP S3NET9: LCALL RETURN;******************调整时间加1键*****************S3: JB SK3 ,S4 ;数字钟调整时间键LCALL DL10msJB SK3 ,S4CLR SPEAKCLR LED4CJNE R7 ,#1 ,NET2SETB SPEAKSETB LED4LCALL DL200msINC min ;分单元加1MOV A ,minCJNE A ,#60 ,NET9 ;不等60时跳转显示,等60时将分单元清零 MOV min ,#00LCALL NET3JB SK3 ,NET4LJMP S3NET2: SETB SPEAKSETB LED4LCALL DL200msINC hour ;时单元加1MOV A ,hourCJNE A ,#24 ,NET9 ;不等24时跳转显示,等24时将时单元清零 MOV hour ,#00LCALL NET3JNB SK3 ,NET4LJMP S3NET4: SJMP S4NET3: LCALL RETURN;****************调整时间减1键**********************S4: JB SK4 ,NET11 ;数字钟调整时间键LCALL DL10msJB SK4 ,NET11CLR SPEAKCLR LED4CJNE R7 ,#1 ,NET8SETB SPEAKSETB LED4LCALL DL200msDEC min ;分单元减1MOV A ,minCJNE A ,#0FFH ,NET3 ;不等60时跳转显示,等60时将分单元清零 MOV min ,#59LCALL NET3JB SK4 ,NET11SJMP S4NET8: SETB SPEAKSETB LED4LCALL DL200msDEC hour ;时单元减1MOV A ,hourCJNE A ,#0FFH ,NET3 ;不等24时跳转显示,等24时将时单元清零 MOV hour ,#23LCALL NET3JB SK4 ,NET11LJMP S4NET11: LJMP S1;***********************中断程序******************SERVE: PUSH PSWPUSH ACC ;保护现场MOV TH0 ,#0D8HMOV TL0 ,#0F0H ;重新赋计数初值INC m_sec ;毫秒单元加1MOV A ,m_secCJNE A ,#100 ,NEXT1MOV m_sec ,#00INC sec ;秒单元加1MOV A ,secCJNE A ,#60 ,NEXT1MOV sec ,#00INC min ;MOV A ,minCJNE A ,#60 ,NEXT1MOV min ,#00INC hour ;MOV A ,hourCJNE A ,#24 ,NEXT1MOV hour ,#00NEXT1: LCALL RETURNPOP ACCPOP PSW ;恢复现场RETI ;中断返回;********************数字钟显示程序****************** RETURN: MOV A ,sec ;将秒送AMOV B ,#10DIV ABMOV 24H ,B ;秒的个位MOV 25H ,A ;秒的十位MOV A ,min ;将分送AMOV B ,#10DIV ABMOV 26H ,B ;分的个位MOV 27H ,A ;分的十位MOV A ,hour ;将时送AMOV B ,#10DIV ABMOV 28H ,B ;时的个位MOV 29H ,A ;时的十位LCP: MOV R1 ,#24HMOV R4 ,#6MOV DPTR ,#TABBK: MOV A ,@R1MOVC A ,@A+DPTRMOV SBUF ,AJNB TI ,$CLR TIINC R1DJNZ R4 ,BKRET;******************字型码****************************TAB: DB 11H,0D7H,32H,92H,0D4H,98H,18H,0D3H,10H,90H ;0~9 ;*******************延时10ms子程序******************DL10ms: MOV R2 ,#10HTS1: MOV R3 ,#0FFHTS2: DJNZ R3 ,TS2DJNZ R2 ,TS1RET;*******************延时200ms子程序******************* DL200ms:MOV R3,#20DL3: MOV R4,#10HDL2: MOV R5,#0FFHDL1: DJNZ R5,DL1DJNZ R4,DL2DJNZ R3,DL3RET;****************分显示闪烁子程序******************** MSH: LCALL RETURNLCALL DL200msMOV A ,#0FFHMOV B ,#0FFHMOV 26H ,BMOV 27H ,ALCALL LCPLCALL DL200msRET;****************时显示闪烁子程序******************** HSH: LCALL RETURNLCALL DL200msMOV A ,#0FFHMOV B ,#0FFHMOV 28H ,BMOV 29H ,ALCALL LCPLCALL DL200msRETEND。