基于单片机的智能电子钟系统设计毕业设计论文
基于单片机的智能电子钟系统设计毕业设计论文

基于单片机的智能电子钟系统设计课程名称: MCS-51单片机应用设计基于单片机的智能电子钟系统设计摘要:电子钟是一种利用数字电路来显示时间的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。
本设计通过以单片机芯片STC89C51为核心,通过软件编程完成时钟及定时的基本功能,温度芯片DS18B20完成温度测量功能。
采用了六位数码管动态显示时、分、秒,两个LED灯分别指示上下午,同时还有两个LED灯每半秒分别闪烁一次。
通过4个外部按键可以控制小时和分钟的定时和定闹以及报警。
此电子钟具有性能优越,操作简单等优点。
关键词:智能电子钟、STC89C51、LED数码管、DS18B20毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。
据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。
对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。
有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。
学校可以公布论文(设计)的全部或部分内容。
保密的论文(设计)在解密后适用本规定。
作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
基于单片机的智能时钟毕业论文设计

武汉科技大学中南分校本科毕业设计(论文)题目:基于单片机的智能时钟设计学院:信息工程学院专业:自动化学号:204学生姓名:周恒昆指导教师:韩建中二○一○年十一月二十四日摘要本系统设计是基于ATMEL公司的AT89C51单片机开发平台实现一种高精度,智能化的时钟系统。
AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,采AT89C51单片机为控制核心,由单片机控制数码管的显示,,修改设置时间采用操作方便的键盘,整点报时系统使用无源蜂鸣器,通过调节输入方波的占功比,达到美妙旋律的声音实现报时的功能,整个系统设计比较完善,有显示时间日期、整点报时、时间日期调节设置的功能,除些之外还介绍了51单片机和汇编程序一些经验和方法,以便将51单片机的汇编程序经过局部的修改就可以移植到单片机上,实现不同的功能,节约重新开发的时间。
最后总结了一些关于在做基于单片机的智能时钟所遇到的问题和困难,以及将AT89C51单片机与工业标准的MCS-51的各方面性能进行了比较,其最大的特点是只读存储器可以反复擦除,精简版本高效微控制器AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,也是它应用较为广泛的原因。
关键词:AT89C51单片机;数码管;蜂鸣器Intelligent design based on single chip clockMeterZhouhengkunAbstractThe system design is based on ATMEL Corporation AT89C51 microcontroller development platform to achieve a high precision, intelligent clock system.AT89C51 is a flash with 4K bytes of erasable programmable read only memory (FPEROM-Flash Programmable and Erasable Read Only Memory), low voltage, high-performance CMOS 8-bit microprocessor, microcontroller AT89C51 adopted as the control center, by the MCU control the digital display of, modify, easy to operate, set the time using the keyboard, the whole point timekeeping system using passive buzzer, by adjusting the input square wave of the total power ratio, to achieve chime melodies sound features, the entire system more perfect, showing time and date, the whole point of time, adjust the setting time and date functions, in addition to those introduced in addition to 51 single-chip and assembly procedures and methods of some experience, so that after 51 MCU assembler can be transferred to local changes to the microcontroller, to achieve different functions, saving development time again. Concludes with a summary about doing intelligent microcontroller-based clock problems and difficulties encountered, and the AT89C51 microcontroller with industry-standard MCS-51 performance in all aspects were compared, the biggest feature is read-only memory can be repeated rubbing In addition, efficiently streamlined version of the microcontroller AT89C51 microcontroller for many embedded control system provides a high flexibility and low cost solution, but also because it is widely used.Key words: AT89C51 microcontroller; digital; buzzer前言 ........................................................................................................................................ - 1 -第1章 Proteus软件简介........................................................................................................ - 2 -第2章方案论证与设计............................................................................................................. - 2 -数字时钟方案 ............................................................................................................................ - 2 -数码管显示方案 ........................................................................................................................ - 3 -第3章硬件系统设计............................................................................................................... - 4 -系统框图与说明 ........................................................................................................................ - 4 -模块设计 .................................................................................................................................... - 4 -3.2.1电源部分...................................................................................................................... - 4 -3.2.2复位电路...................................................................................................................... - 5 -3.3.3晶振电路...................................................................................................................... - 5 -3.3.4单片机系统电路.......................................................................................................... - 6 -3.3.5数码管显示驱动电路.................................................................................................. - 7 -3.3.6整点报时电路设计...................................................................................................... - 9 -3.3.7按钮设置电路.............................................................................................................. - 9 -用Proteus软件设计智能时钟的仿真电路........................................................................... - 10 -电路图绘制 .............................................................................................................................. - 11 -第5章软件系统设计............................................................................................................. - 15 -主程序设计 .............................................................................................................................. - 15 -5.1.1中断程序流程图........................................................................................................ - 15 -5.1.2时、分、秒按键判断和调时设置流程.................................................................... - 17 -5.1.3年、月、日按键判断和调时设置流程图................................................................ - 18 -5.1.4显示时、分、秒子程序流程图................................................................................ - 19 -5.1.5显示年、月、日子程序流程图................................................................................ - 20 -源程序 ...................................................................................................................................... - 21 -第6章程序编写调试及智能时钟系统调试与仿真............................................................. - 32 -程序汇编软件Keil简介及操作方法..................................................................................... - 32 -时钟系统仿真 .......................................................................................................................... - 37 -时钟系统调试 .......................................................................................................................... - 38 -第7章总结 .......................................................................................................................... - 41 -致谢 .................................................................................................................................... - 41 -参考文献 .................................................................................................................................. - 42 -前言随着科学技术的发展和电子技术产业结构调整,单片机开始迅速发展,由于家用电器逐渐普及,市场对于智能时钟控制系统的需求也越来越大。
基于单片机的电子时钟设计毕业论文

基于单片机的电子时钟设计毕业论文目录第一章电子时钟设计方案分析 (3)1.1FPGA设计方案 (3)1.2单片机设计方案 (3)第二章基于单片机的电子时钟硬件设计 (5)2.1主要芯片选择 (5)2.1.1微处理器选择 (5)2.1.2时钟芯片选择 (6)2.2电子时钟硬件电路设计 (11)2.2.1时钟电路设计 (13)2.2.2显示电路设计 (14)2.2.3按键电路设计 (15)2.2.4闹铃电路设计 (16)2.2.5复位电路设计 (17)第三章电子时钟软件设计 (19)3.1主程序设计 (19)3.2子程序设计 (19)3.2.1日历子程序设计 (19)3.2.2显示子程序设计 (20)3.2.3键盘扫描子程序 (20)3.2.4闹铃子程序设计 (21)第四章系统调试 (25)4.1硬件调试 (25)4.1.1单片机基础电路调试 (25)4.1.2显示电路调试 (27)4.1.3DS1302电路调试 (28)4.1.4按键电路调试 (29)4.2软件调试 (29)4.2.1键盘子程序调试 (29)4.2.2时钟日历子程序调试 (30)致谢....................................................... 错误!未定义书签。
参考文献 (33)附录一程序 (35)附录二多功能电子时钟元器件一览表 (55)附录三多功能电子时钟硬件原理图 (56)附录四 (57)附录五 (60)前言时间是人类生活必不可少的重要元素,如果没有时间的概念,社会将不会有所发展和进步。
从古代的水漏、十二天干地支,到后来的机械钟表以及当今的石英钟,都充分显现出了时间的重要,同时也代表着科技的进步。
致力于计时器的研究和充分发挥时钟的作用,将有着重要的意义。
1.多功能电子时钟研究的背景和意义20世纪末,电子技术获得了飞速的发展。
在其推动下,现代电子产品几乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
毕业设计论文_单片机电子时钟的设计

毕业设计论文_单片机电子时钟的设计摘要:电子时钟作为一种常见的时间显示装置,在现代社会中应用广泛。
本文设计了一款基于单片机的电子时钟,使用DS1307实时时钟芯片来获取系统时间,并通过数码管进行显示。
设计过程中,通过对单片机的编程和电路的连接,实现了时间的显示与调节功能,具有较高的准确性和稳定性。
该设计方案简单、实用,可用于各种场合。
关键词:单片机;电子时钟;DS1307;数码管1.引言电子时钟是一种利用电子技术构造的显示时间的装置,具有时间准确、使用简单、显示清晰等特点,广泛应用于生活和工作中。
本文以单片机为核心,设计了一款实时准确的电子时钟,提高了时间的准确度和稳定性。
2.设计原理该设计的核心是通过单片机与DS1307实时时钟芯片的连接,使得单片机可以获取到准确的系统时间,并通过数码管进行显示。
DS1307芯片通过I2C总线与单片机连接,通过读取芯片中的时间寄存器,单片机可以获得当前的时间信息。
3.硬件设计本设计中使用了AT89S52单片机作为主控芯片,通过引脚与DS1307芯片相连。
单片机的P0口接到数码管的段选信号,P1口接到数码管的位选信号,通过控制这两个口的输出状态,可实现对数码管上显示的数字进行控制。
同时,为了使时钟可以正常运行,需外接一个晶振电路为单片机提供时钟信号。
4.软件设计通过对单片机的编程,实现了以下功能:(1)初始化DS1307芯片,设置初始时间;(2)每隔一秒读取一次DS1307芯片的时间寄存器,将时间信息保存到单片机的RAM中;(3)根据当前时间信息,在数码管上显示对应的小时和分钟。
5.调试与测试经过硬件的连接以及软件的编写,进行了调试与测试。
将初始时间设置为08:30,观察数码管上的显示是否正确,以及时间是否准确。
同时,通过手动调节DS1307芯片中的时间,检查单片机是否能正确获取时间,并进行显示。
6.总结与展望本文设计了一款基于单片机的电子时钟,通过单片机与DS1307芯片的连接和编程,实现了准确的时间显示功能。
基于单片机的多功能数字电子钟设计学士学位毕业设计论文

学士学位毕业设计(论文)基于单片机的多功能数字电子钟设计学生姓名:XX学号:XXXXXX指导教师:XXXX所在学院:XXXXXXXX专业:XXXXXXXXXXXXX中国·大庆2014 年 5 月黑龙江八一农垦大学本科毕业设计(论文)任务书注:1.任务书由指导教师填写后交给学生,要求学生妥善保存。
2.此任务书夹于论文扉页与论文一并装订,作为论文评分依据之。
摘要电子钟是当今社会中最主要的计时工具,它广泛的被应用在电脑,手机,和其他社会生活的各个方面,和所有要求时间的场所。
20世纪90年代,电子技术的飞速成长推动了现代电子商品的发展,电子产品已经深入社会的各个领域,为社会生产力的发展和社会信息化程度的发展提供了强大的动力,电子技术的发展如今越来越快,电子产品的更新换代的节奏更快。
在当今社会,人们越来越重视时间,生活节奏越来越快,时间就是金钱。
时间如果不准确,会对那些需要精确时间的人带来极大的麻烦。
本设计的核心元件是STC89C52,LCD12864液晶模块、DHT11温湿度感应模块、DS1302时间模块及按键模块组成。
本设计实现了万年历的基本功能,显示年、月、日、时、分、秒、星期,温湿度而且可以整点报时,闹表功能,无源时钟芯片再接一个3V电源,掉电后能正常工作,重新上电后不用调整时间。
整个设计具有操作简单,性价比高,环保无噪音,低功耗等优点。
关键词:电子时钟单片机DS1302 DHT11ABSTRACTDigital electronic clock is one of the main timing tool in the modern world, widely used cell phones, computers, cars and so on all aspects of social life, and the time required for the occasion.20th century, electronic technology gained rapid development, driven in its modern electronics into almost all areas of society, a strong impetus to the development of the social productive forces and social improvement in the level of information, but also to modern electronic products further improve the performance, product upgrading faster and faster pace.Modern life more and more attention from the concept of time, time and money can be said to equate. For those who are very strict on time and accurate grasp of people and things, time is not accurate will bring great trouble.This design uses AT89S52 micro-controller as the core component, attach ed above power-on reset circuit, crystal oscillator circuit, LCD12864B liquid crystal display modules, DHT11 temperature and humidity sensor module, DS1302 time module and key tone circuit.The design and implementation of the basic functions of the calendar, year, month, day, hour, minute, second, day, temperature and humidity but also the whole point timekeeping, alarm clock function, followed by a clock chip passive 3V power supply can power down after working properly, do not adjust the time after power outages. The whole design is simple, cost-effective, environmentally friendly no noise, low power consumption.Keywords: Electronic Clock MCU DS1302 DHT11目录摘要 (I)ABSTRACT (II)前言 (V)1 绪论 (1)1.1电子时钟的研究背景 (1)1.2电子时钟的国内外研究现状 (1)2 元件介绍 (3)2.1单片机STC89C52 (3)2.2实时时钟芯片DS1302 (5)2.3温湿度传感器DHT11 (7)2.4液晶显示屏LCD12864 (8)2.5本章小结 (8)3 总体方案 (9)3.1系统的设计思路 (9)3.2系统硬件描述 (9)3.3系统软件描述 (10)3.4设计流程 (10)3.5本章小结 (10)4 系统硬件架构 (11)4.1单片机最小系统 (11)4.2时钟模块 (13)4.3温湿度传感器模块 (13)4.4液晶显示模块 (13)4.5按键模块 (14)4.6蜂鸣器报警模块 (14)4.7本章小结 (15)5 软件设计 (16)5.1 软件设计总体说明 (16)5.2系统程序流程图设计 (16)5.3系统程序设计(见附录) (20)5.4本章小结 (20)结论 (21)参考文献 (22)致谢 (23)附录一 (24)附录二 (25)前言近年来,电子产品的成长越来越快,社会竞争也更剧烈,人们对电子时钟的要求更高了。
单片机电子时钟设计毕业论文(1)159

单片机电子时钟设计毕业论文一. 题目:单片机电子时钟时钟二.内容:设计一个数字时钟,显示范围为00:00:00~23:59:59。
通过几个开关进行控制,其中开关K1用于切换时间设置(调节时钟)和时钟运行(正常运行)状态;开关K2用于切换修改时、分、秒数值;开关K3用于使相应数值加1调节;开关K4用于减1调节;开关K5用于设定闹钟,闹钟同样可以设定初值,并且设定好后到时间通过实验箱音频放出一段乐曲作为闹铃。
选做增加项目:还可增加秒表功能(精确到0.01s)或年月日设定功能。
一、设计要求1、准确计时,以数字形式显示时、分、秒的时间。
2、小时以24小时计时形式,分秒计时为60进位。
3、校正时间功能,即能随意设定走时时间。
4、闹钟功能,一旦走时到该时间,能以声或光的形式告警提示。
5、设计5V直流电源,系统时钟电路、复位电路。
二、设计方案和论证本次设计时钟电路,使用了ATC89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、LED显示即可满足设计要求。
四.电路及功能说明:电路图如图所示:图A图B图C该数字钟是用一片AT89C51A单片机通过编程去驱动8个数码管实现的。
通过6个开关控制,从上到下6个开关KEY1~KEY6的功能分别为:KEY1,切换至秒表;KEY2,调节时间,每调一次时加1;KEY3, 调节时间,每调一次分加1;KEY4,从其它状态切换至时钟状态;KEY5,切换至闹钟设置状态,也可以对秒表清零;KEY6,秒表暂停.控制键分别与P1.0~P1.5口连接.其中:A.通过P2口和P3口去控制数码管的显示如图所示P2口接数码管的a——g端,是控制输出编码,P3口接数码管的1——8端,是控制动态扫描输出.B.从P0.0输出一个信号使二极管发光,二极管在设置的闹钟时间到了时候发光,若有乐曲可以去驱动扬声器实现。
单片机多功能电子钟毕业设计论文

单片机多功能电子钟毕业设计论文一、设计题目:基于单片机并行口的电子钟的设计二、任务与要求:在智能化仪器外表中,操纵核心均为微处理器,而单片机以其高性能、高速度、体积小、价格低廉、稳固可靠而得到广泛应用,是设计智能化仪器外表的首选微操纵器,单片机结合简单的接口电路即可构成电子钟,它可广泛应用于工业、农业、日常生活等领域,与传统钟表相比较,它具有高精度、高可靠性、操作方便、价格廉价、智能化等特点,是钟表的一个进展方向,具有一定的有用价值。
1、本课题任务如下:设计一个具有特定功能的电子钟。
该电子钟上电或按键复位后能自动显示系统提示符“P.”,进入时钟预备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,现在可利用各调整键调整时刻,调整终止后可按启动/调整键再次进入时钟运行状态。
2、本课题要求如下:(1)在AT89S51的P0口和P2口外接由六个LED数码管(LED5~LED0)构成的显示器,用P0口作LED的段码输出口(P0.0~P0.7对应于LED的a~dp),P2.5~P2.0作LED的位控输出线(P2.5~P2.0对应于LED5~LED0),P1口外接四个按键A、B、C、D(对应于P1.0~P1.3)。
(2)、利用六个LED显示当前时刻。
(3)、四个按键的功能:A键用于电子钟启动/调整;B键用于调时,范畴0-23,0为24点,每按一次时加1;C键用于调分,范畴0-59,0 为60分,每按一次分加1;D键用于调秒, 范畴0-59,0为60秒,每按一次秒加1。
(4)、单片机采纳AT89S51,f osc=12MH Z。
(5)、电子钟供电电源电路的设计。
(6)、电子钟时钟电路,复位电路的设计。
(7)、编写系统监控程序、键扫子程序、显示子程序及其它所需子程序、功能程序和中断服务程序。
(8)、运算机输出课程设计说明书一份。
基于单片机的电子时钟的设计-毕业论文

毕业论文(设计)题目:基于单片机的电子时钟的设计作者姓名:学号:专业:电子信息工程技术指导教师:2012年 6 月(设计)选题表2012 年 6 月 1 日摘要传统的数字电子时钟采用了较多的分立元器件,不仅占用了很大的空间而且利用率也比很低,随着系统设计复杂度的不断提高,用传统时钟系统设计方法很难满足设计需求。
单片机是集CPU、RAM、ROM、定时器/计数器和多种接口于一体的微控制器。
它体积小、成本低、功能强,广泛应用于智能产品和工业自动化上.而51系列的单片机是各单片机中最为典型和最有代表性的一种。
本文设计的电子时钟是基于51单片机,同时使用c语言为程序设计语言,从而克服传统电子时钟的弊端。
本设计拟实现的基本功能为单片机计时显示功能.能够体现单片机电子时钟的可扩展优越性,加入时间调整程序,使用按钮,调整年月日及时间;加入阴历显示功能。
关键词:单片机,电子时钟,c语言ABSTRACTTraditional digital electronic clock with a greater amount of discrete components, not only takes up a lot of space and utilization than low,as the system design complexity continues to improve, the clock system design using traditional methods are difficult to meet the design requirements 。
Microcontroller is a CPU, RAM, ROM, timer / counter and a variety of interfaces in one of the micro-controller。
Its small size, low cost,powerful, widely used in smart products and industrial automation。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的智能电子钟系统设计姓名:李永健、王海、吕军梅、巩珍珍课题组的分工或贡献:每人完成的百分比或者每人负责的内容课程名称: MCS-51单片机应用设计指导教师:李林2014年12月基于单片机的智能电子钟系统设计李永健、王海、吕军梅、巩珍珍(信息科学与工程学院)摘要:电子钟是一种利用数字电路来显示时间的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。
本设计通过以单片机芯片STC89C51为核心,通过软件编程完成时钟及定时的基本功能,温度芯片DS18B20完成温度测量功能。
采用了六位数码管动态显示时、分、秒,两个LED灯分别指示上下午,同时还有两个LED灯每半秒分别闪烁一次。
通过4个外部按键可以控制小时和分钟的定时和定闹以及报警。
此电子钟具有性能优越,操作简单等优点。
关键词:智能电子钟、STC89C51、LED数码管、DS18B20目录一、项目目的二、项目要求三、基本原理四、设计方案(一)系统整体设计思想(二) 电子钟计时(三) 数码管显示(四) 调时(五) 定闹、报警(六) 温度采集五、结论六、参考文献七、附录一附录二一、项目目的1. 掌握单片机各个功能模块(并行I/O口、中断系统、定时器/计数器)的工作原理、性能和特点;2、掌握单片机外围电路的设计方法和仿真方法;3、掌握单片机外围电路的调试方法;4、掌握单片机外围电路设计报告的撰写方法;5、培养团队合作精神、项目组织与管理、交流表达能力;6、培养责任感和职业道德。
二、项目要求本课程三级项目要求学生使用MCS-51系列单片机设计并制作一个具有时间显示、按键调时、闹钟报警、温度测量、遥控和自动调时等功能的软硬件系统,可实现六项基本功能分别如下:1) 时间显示:采用六个数码管显示当前时间:小时、分钟、秒。
2) 温度显示:采用两个数码管显示当前环境温度。
3) 上下午指示:采用两个发光二极管来指示上下午。
4) 半秒提示:采用两个发光二极管,每隔半秒闪烁。
5) 调时功能:采用三个按键(K1-K3)来调整时间,步骤如下:a)按下K1键,开始调小时,同时2个小时数码管闪烁。
b)按下K2键,小时加;按下K3键,小时减。
c)小时调整好后,再按下K1键,开始调分钟,同时分钟数码管闪烁。
d)按下K2键,分钟加;按下K3键,分钟减。
e)调整好分钟后,再按下K1键,调时结束。
6) 闹钟功能:采用三个按键(K2-K4)来调整闹钟,步骤如下:a)按下K4键,开始调小时,同时2个小时数码管闪烁。
b)按下K2键,小时加;按下K3键,小时减。
c)小时调整好后,再按下K4键,开始调分钟,同时分钟数码管闪烁。
d)按下K2键,分钟加;按下K3键,分钟减。
e)调整好分钟后,再按下K4键,定闹结束。
闹钟定时的时间到后,蜂鸣器/扬声器发出提示音;用户需按K2-k4键来取消闹钟警告。
三、基本原理利用软件编程借助于定时器/计数器0实现间隔为1s 的定时功能,格式为秒,分,时,在其中断服务程序中实现对小时、分钟、秒单元数值的调整。
主程序通过不断循环调用调时子程序,实现整个功能。
利用嵌套在调时子程序中的显示子程序实现上下午指示和半秒闪烁。
利用温度芯片DS18B20来测量温度。
四、设计方案(一)系统整体设计思想 总体设计框图:电源STC89C52单 片 机DS18B20 温度芯片 LED 灯指示 (上下午、半秒)8片数码管显示按键(k1~k4)报警通过定时器/计数器0实现1s的计时,将它设计成内部中断,即每计满1s 产生中断信号,主程序转去执行定时器0的中断服务程序,按照时间规则改变相应RAM存储单元的数值。
在主程序里首先不断检测是否有按键按下,如果没有,则不断调用显示子程序,否则,根据按下的是哪个键可以转去执行相应的程序段,分别实现小时和分钟的加和减以及闹钟定时,而每次执行结束都会调用显示子程序,保证数码管的稳定显示,同时也可以实时根据存储单元数值的不同显示。
而闹钟的倒计时则利用定时器/计数器1的计时来实现,同样为1s计时,只不过是在中断服务程序中实现对存储单元的按规则递减,同样的即使显示就可以实现倒计时功能,到达00:00:00时就可以调用报警子程序,实现报警。
(1)RAM单元分配(21H).0 指示即将显示的是十位还是个位20H #0AH,定时器/计数器0或1计满10次为1s19H #05H,定时器/计数器0或1计满5次为0.5s18H #05H,显示子程序内部执行次数29H #01010101B30H 小时的BCD码31H 分钟的BCD码32H 秒的BCD码TH0 #3CH,T0计数初值,可计时100msTL0 #0B0HTH1 #3CH,T1计数初值,可计时100msTL1 #0B0H(2)循环执行部分:HERE: LCALL ADJUSTAJMP HERE ;反复调用ADJUST程序可以实现所有功能(3)主程序的初始化部分:MAIN: SETB P3.0CLR P3.1MOV TMOD,#01H ;设T0方式1,定时CLR A ;A清零MOV 30H, A ;“时”单元清零MOV 31H, A ;“分”单元清零MOV 32H, A ;“秒”单元清零SETB ET0 ;允许中断SETB ET1SETB EA ;CPU开中断MOV TH0, #3CH ;给T0装入计数初值,可计时100msMOV TL0, #0B0H ;MOV TH1, #3CH ;给T1装入计数初值MOV TL1, #0B0HSETB TR0 ;启动计数(二)时间显示模块(1)物理连接P0.0~P0.7接数码管的a~dp(片选码)P2.0~P2.5接数码管的1~6(段选码)时间显示:采用六个数码管显示两位的小时,分钟,秒(2)流程图:动态显示的核心在于依次选中一块数码管,并在此之前将相应数码管要显示的数字的段码送到端口,进行相应的延时后关闭数码管选通信号。
不断执行上述过程就可以实现较为稳定的动态显示。
每次进入主程序都首先判断是否到了1s,到了则继续执行,否则,返回中断。
为了在显示完秒之后还能继续显示小时的十位,必须有一个用来计数的单元,用以区分当前显示的是小时还是分钟,还是秒,并以此作为仅次于显示次数N的循环。
对每一个单元(30H~32H)的两位BCD码的显示,用一位(21H).0来指示即将显示的是十位还是各位,据此控制刚才所说的单元指示数值是否用该加一或者重新初始化。
由此在DISPLAY子程序中有3重循环。
调用入口参数为30H~32H单元的数值。
(4)半秒提示:采用两个发光二极管,每隔半秒闪烁。
中断5次就是半秒,并在相应的分支里设置P3.6和P3.7,保证二者同时取反即可。
这可以放在显示子程序内部,保证时间显示和半秒闪烁的同步,同时可以节约计数器。
(5)上下午指示:采用两个发光二极管来指示上下午。
只要判断30H单元的内容与11H相比较就可以知道是上午还是下午了,在分支语句里控制相应的灯亮了就行。
如上所述,将它放置在显示子程序里较为方便。
时间显示模块的仿真结果时分秒上午半秒提示(三)按键模块ADJUST的主体部分就是检测是否有按键按下,如果没有只是调用显示子程序,而有的话转去执行相应的分支语句。
为了防止干扰,我们便写了一个延时5ms左右的子程序,若是经过延时后,按键信号依然有效,则认定是有效信号,否则为干扰,返回程序起始点重新检测。
K1可以控制实现定时,所以定时器计数器依然是0在起作用,在其分支语句里根据按键次数使指针指向不同的单元(小时、分钟),然后检测K2\K3的信号到来。
在K2\K3的分支语句里实现指针所指向单元的加一或者减一,但是注意要按照时间规则来,对加一或者减一结果进行调整,否则可能出错。
对单元的加一或者减一直接反映到显示子程序和定时器计数器0或者1的16位计数单元里,所以,每次更改后的值就相当于对时间确定调节,并从该处继续计时,这样就实现了调时功能。
K4的分支语句要求实现定闹,它与K1分支语句的不同之处是更改当前计数器为1,关闭0,在计数器1的中断服务程序里可以实现倒计时功能。
元器件:按钮开关K1:控制调时K3:对应单元减一K2:对应单元加一K4:控制定闹(四)闹钟模块(1)计时器T1的倒计时同样是1s的倒计时,只是在中断程序里实现对计时单元的减一,但在减一之前检测是否为0,如果是就调用报警子程序,如果不是则按照规则减一,注意的同样是数值的调整。
调整结束后返回ADJUST程序,继续检测,这样就可以实现连续调节。
(五)报警模块连线P1.7引脚连接到三极管元器件:蜂鸣器、三极管2N2907原理:由单片机芯片中引脚输出的信号来控制蜂鸣器的开和关在报警子程序里要求不断调用显示子程序,这样数码管可以在时间到达之后稳定显示00:00:00.(六)温度测量模块元器件:数字温度传感器DS18B20(测温范围-55度~125度)原理:利用温度传感器测量到温度值通过引脚传递到芯片中利用DS18B20温度芯片来实现温度测量的功能,并将其显示在数码管上。
测量的温度范围是零下55至零上125摄氏度。
DS18B20的六条控制命令如下表:指令约定代码操作说明温度转换44H 启动DS18B20进行温度转换读暂存器BEH 读暂存器9个字节内容写暂存器4EH 将数据写入暂存器的TH、TL字节复制暂存器48H 把暂存器的TH、TL字节写到E2RAM中重新调E2RAM B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节读电源供电方式B4H 启动DS18B20发送电源供电方式的信号给主CPU五、结论本次项目利用单片机STC89C52控制串行口与时钟芯片DS1302构成数字时钟电路,实现计时功能,同时具有定时闹钟的功能,并且可以显示温度,定时和调时的功能仅用四个键控制,更加方便。
本设计没有实现上下午提示和半秒提示的功能,但是智能电子钟的基本功能已经实现,所以算是比较成功的。
六、不足和改进(1)当定闹结束之后不能够通过按键来重新启动,这个可以通过在报警子程序里跳转到主程序重新开始执行来实现。
在调时和定闹的过程中,相应模块不能闪烁,这个可以通过调用一个新的显示子程序,实现相应数码管间歇性亮灭。
时间紧迫,没有对减或者加的单元设定上限和下限值,所以只能实现一天内的功能。
这个可以通过在相应程序段中与限值比较来实现。
(4)温度显示模块是一大遗憾,没有足够的时间来做。
在设计过程中另外有一个关于按键的想法,没有能够编程实现。
它是利用两级中断来实现。
加一或者减一是通过外部中断的中断服务程序实现。
这里可能与按键延时有关,同时这样的设计可能会涉及到从引脚读入信号,这在实际设计中不可取。
此处不再赘述。
七、感想经历过这么多不间断的讨论课和三级项目,我们有挺多感触的,从最基本上来说我们看到了,也意识到了自己的不足,对于不断克服的各种阻碍也让我们体会到了讨论课、三级项目的意义所在。