STC51单片机电子闹钟_第1页
STC51单片机电子闹钟_第2页
STC51单片机电子闹钟_第3页
STC51单片机电子闹钟_第4页
STC51单片机电子闹钟_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字电子闹钟 摘 要20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。数字钟的精度、稳定度远远超过老式机械钟。在这次设计中,我们采用数码管显示时、分,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整,并且具有定时闹铃功能。数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。关键字: 单片机 电子闹钟目 录 第一章 绪论 1.1 单片机的背景 11.2 单片机的意义 11.3 单片机的应用 1第二章 整体设计方案2.1 单片机的选择 2第三章 数字钟的硬件设计3.1 电源模块 63.2 USB串口 73.3 单片机模块 83.4四位共阳数码管和LED模块 83.3 按键模块 8第四章 数字钟的软件设计4.1 系统软件设计流程图 94.2主程序 104.3系统分析与说明 17附:实物图18结束语第一章 绪论1.1数字电子钟的背景 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2数字电子钟的意义数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。1.3数字电子钟的应用 数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。 第二章 整体设计方案2.1 单片机的选择 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。 单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面:1、多功能 单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器-看家狗)、高速I/O口及计数器的捕获/比较逻辑等。 有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。例如,有的芯片以51内核为核心,集成了USB控制器、SMART CARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2、高效率和高性能 为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。 由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发 难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。3、低电压和低功耗 单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。4、低价格 单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。下面大致介绍一下单片机的主要应用领域和特点。(1)家用电器领域 用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。(2)办公自动化领域 单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。(3)商业应用领域 商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。(4)工业自动化 在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。(5)智能仪表与集成智能传感器 目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。(6)现代交通与航空航天领域 通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。目前,我国生产很多型号的单片机,在此,我们采用型号为STC12C5A的单片机。因为:STC12C5A是一个低电压,高性能单片机,片内含16k bytes的可反复擦写的Flash只读程序存储器和1280 bytes的随机存取数据存储器(RAM),40个引脚,36个外部双向输入/输出(I/O)端口,4个16位可编程定时计数器,2个全双工串行通信口。第三章 数字钟的硬件设计3.1 最小系统设计1、综述系统采用STC12C5A16S2单片机为核心,配合USB转串口芯片CH340T、RS232芯片Max232、四位共阳数码管、LED、按键和蜂鸣器组成最小系统。单片机内部集成双串口、8路10bitADC和两路八位PWM。系统由MINI USB供电和提供程序下载接口,使得电路大大简化,通用性增强。2、模块分析2.1电源模块全系统工作在V且功耗较低,所以采用USB电源供电即可满足。图2.1 电源模块电源前级接入500mA自恢复保险丝,提供短路保护,芯片前级对地分别连接100uF和0.1uF进行电源滤波。电源部分引入三脚单联扭子开关将USB转串口芯片CH340T的电源与芯片电源进行隔离,以方便下载程序。2.2、USB转串口STC12C5A16S2单片机可以通过串口烧写程序,系统采用CH340T将USB转换为串口信号,以供单片机下载程序,电路如图2.1:图2.2 USB转串口模块图中UD+与UD-为计算机USB信号,RxD与TxD信号为CH340T转换后接到单片机的串口信号。2.3、单片机模块单片机模块由复位电路,晶振电路和蜂鸣器电路组成,然后将多余I/O口外接以供扩展。图2.3 单片机模块2.4、四位共阳数码管和LED模块单片机P2.0端口用于8个LED选通,P2.1-P2.4端口用于数码管位选;P0.0-P0.7用于数码管段选和8个LED选择。图2.4四位共阳数码管图2.5 8位LED模块2.5、按键模块单片机P3.2-P3.5端口用于扫描按键状态,组成1X4键盘。图2.6 按键模块第四章 数字钟的软件设计系统的软件设计也是工具系统功能的设计。单片机软件的设计主要包括执行软件(完成各种实质性功能)的设计和监控软件的设计。单片机的软件设计通常要考虑以下几个方面的问题:(1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构,使软件开发清晰、简洁和流程合理;(2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。既便于调试、链接,又便于移植和修改;(3)建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数;(4)绘制程序流程图;(5)合理分配系统资源;(6)为程序加入注释,提高可读性,实施软件工程;(7)注意软件的抗干扰设计,提高系统的可靠性。4.1 系统软件设计流程图 这次的数字电子钟设计用到很多子程序,它们的流程图如下所示。开始启动定时器按键检测时间显示 主程序是先开始,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可以显示时间。图4-1 主程序流程图时间显示是先是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最后是时十位显示。 在此有必要介绍一下数字电子钟的工作原理。工作原理 : 数字电子钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒,另外还有校时功能。因此,一个基本的数字钟电路主要由显示器“时”,“分”和单片机,还有校时电路组成。4个数码管的段选接到单片机的P0口,位选接到单片机的P2口。数码管按照数码管动态显示的工作原理工作,将标准秒信号送入“秒单元”,“秒单元”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分单元”的时钟脉冲。“分单元”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时单元”。“时单元”采用24进制计时器,可实现对一天24小时的累计。显示电路将“时”、“分”通过四段显示器显示出来。校时电路时用来对“时”、“分”显示数字进行校对调整,按一下kmin,分就加1,按一下khour,时就加1,满进制清零。4.2 主程序#include#define ui unsigned int#define uc unsigned charui a,b,aa,hour,min,num1=0,num2=0,num3=0,num4=0,num5=0,total1,total2;sbit k2=P32;sbit k4=P34;sbit k5=P35;sbit p0_0=P07;sbit p3_7=P37;uc code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90 ; /数码管显示编码uc code tablewei=0xfd,0xfb,0xf7,0xef;/ 数码管位选通编码void init()TMOD=0x01; /定时器初始化 选择timer0做16位定时器TH0=(65536-50000)/256;TL0=(65536-50000)%256; EA=1; /开放中断ET0=1; /开放timer0中断TR0=1; /启动timer0P2=tableweib;P0=table0;a=0;b=0;hour=0;min=0;void delay(ui z);void keyscan();void display(ui wei);void clock();void alarm();void main() init();while(1) P2=tableweib; keyscan();clock();if(b=0)display(num5);if(b=1)display(num4);if(b=2)display(num3);if(b=3)display(num2);b+;if(b=4) b=0;delay(5);alarm();if(total1=total2)p3_7=0;delay(10);p3_7=1;void clock()if(num1=60) num1=0;num2+;if(num2=10)num2=0;num3+;if(num3=6)num3=0;num4+;if(num4=10)num4=0;num5+;if(num5=2&num4=4)num2=0;num3=0;num4=0;num5=0; total1=num2+(num3*10)+(num4*60)+(num5*600);void time0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256; /定时器赋初值,适使循环一次50msa+; if(a=20) a=0;num1+;p0_0=0;delay(1); void keyscan()if(k5=0)delay(1000); if(k5=0) min+; if(min=60) min=0;num2=min%10;num3=min/10; if(k4=0)delay(1000); if(k4=0) hour+; if(hour=24) hour=0;num4=hour%10;num5=hour/10; void display(ui wei)P0=tablewei; void delay(ui z) ui x,y;for(x=z;x0;x-)for(y=200;y0;y-);void alarm()ui n2=0,n3=0,n4=0,n5=0,m=0,h=0;if(k2=0)delay(1000); if(k2=0)while(1)P2=tableweib;if(k5=0)delay(1000); if(k5=0) m+; if(m=60) m=0; if(k4=0)delay(1000); if(k4=0) h+; if(h=24) h=0; n2=m%10;n3=m/10;n4=h%10;n5=h/10;total2=n2+(n3*10)+(n4*60)+(n5*600);if(b=0)display(n5);if(b=1)display(n4);if(b=2)display(n3);if(b=3)display(n2);b+;if(b=4) b=0;delay(5);if(k

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论