




免费预览已结束,剩余24页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及应用课程设计报告课题名称:基于单片机的电子钟的设计 姓 名: 院 系: 专业:学 号: 指导教师: 完成时间: 年 月 日目录摘要 .1第一章 引言. 21.1 设计目的.21.2 设计任务.21.3 设计思路.2第二章 硬件系统的设计.32.1 电路原理图设计.32.2 AT89C51引脚及其功能42.2.1 AT89C51的原理及说明.42.2.2 引脚功能52.3 驱动部件. .52.4 显示部件.6第三章 软件系统的设计.73.1 电子钟的主程序73.2 电子钟的显示子程序93.3 定时器中断服务程序9第四章 设计心得.12第五章 附录.13附录1 硬件电路原理图和连接图.13附录2 电子钟程序清单14附录3 元器件清单17附录4实训产品照片.18 参考文献.18基于单片机的电子钟的设计 摘要本次实训是基于AT89C51单片机电子钟的设计,对时、分、秒的显示的控制,时、分、秒用六位数码管显示LED数码管时钟电路采用24小时计时方式。该电路采用AT89C51单片机,使用5V电池供电,只使用一个按键进行复位状态的控制以及正常显示等状态。LED显示采用静态扫描方式实现,采用6M晶振。最常见的电子钟通常使用单片机模块控制,一种用单片机原理实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有硬件成本低、计时准确、更长的使用寿命特点,因此得到了广泛的使用。本次设计通过用单片机为主控制,通过电路仿真而实现。首先使用Proteus Professional软件进行绘制硬件电路图,用keil软件进行编程与调试,最终生成hex文件,传入单片机内部,从而实现仿真效果。关键词:电子钟、仿真、单片机第一章 引言1.1 设计目的(1) 通过课程设计,使我们能够深入理解单片机系统的工作原理,接口电路的设计及调试方法,培养综合运用所学理论知识分析和解决实际问题的能力。(2) 使用AT89C51芯片的串口功能,利用六片8位并行输出串行移位寄存器74LS164,实现时,分,秒的显示。(3) 用keil软件进行编程与调试,利用Proteus 7 Professional软件进行绘制硬件电路图且进行仿真。1.2 设计任务(1) 根据具体题目要求,设计以单片机为控制核心的测量系统或控制系统,完成对指定目标或对象的测量及控制。(2) 设计单片机与测量及控制对象的接口并进行硬件调试。(3) 针对要求测量或控制的对象完成程序的编制。(4) 硬件软件联调,完成题目所要求的功能。(5) 设计能支持时、分、秒的时钟,时钟要具有时间调整功能。1.3 设计思路电子钟的计时器的硬件电路如图所示,采用AT89C51单片机,最小化应用设计;此次设计,我们采用静态显示的方案来完成电子钟的设计。采用共阳八段LED显示器,用74LS164来驱动 LED数码管,采用6M晶振,有利于提高计时的精确性。主要功能:设计一个时钟系统,时钟时间在六位数码管上进行显示,从左到右依次为“时:分:秒”。一上电,数码管显示起始时间为0时0分0秒,即数码管显示00.00.00,以后每秒钟时钟系统加1,最大显示值为23.59.59。本次设计中,我们只用到了一个按键,此按键是用来控制电路复位的,我们将设计好的复位电路直接接在单片机的复位引脚(RST)上,这样程序在运行过程中就会自动查询该引脚上的电平,当该引脚电平为高电平时,则电路恢复初始状态,反之,则程序正常运行。电子钟的硬件电路框图如下: 第二章 硬件系统的设计2.1电路原理图设计 根据AT89C51单片机灌电流能力强,拉电流能力弱的特点,我们选用共阳数码管。将AT89C51的P3.0P3.1分别与74LS164的数据输入口和时钟信号输入口相连,74LS164是8位串入并出移位寄存器,负责将P3.0输出的串行数据转换成并行信号。显然,这种方式显示同样的位数使用单片机的口线大大减少,即可以让LED当前时间数值,数码管显示器有二种工作方式,即静态显示方式和动态扫描显示方式。为节省端口,本系统采用静态扫描显示方式。系统的时分显示部件由6只7段共阳LED数码管构成,前两只用于时的显示,中间两只用于分的显示,最后两只用于秒的显示。每个LED数码管由相对应的74LS164驱动,数码管的a,b,c,d,e,f,g,h,分别分别74LS164的QA,QB,QC,QD,QE,QF,QH相连。具体设计ptotues仿真原理图及实物PCB图见下图所示: 电路原理图及protues仿真:2.2 AT89C51引脚及其功能2.2.1 AT89C51的原理及说明AT89C51是美国Intel公司生产的低电压,高性能CHMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和蔼可亲128 bytes的随机存取数据存储器(RAM),器件采用Intel公司的高密度、非易失性存储技术生产,片内置通用4位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机适合于许多较为复杂控制应用场合。AT89C51引脚图2.2.2 引脚功能Vcc(40):电源电压 GND(20):接地P3.0 RXD(串行输入口) P3.1 TXD(串行输出口)RST(9):复位信号输入端。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1(18):振荡器反相放大器的及内部时钟发生器的输入端。XTAL2(19):振荡器反相放大器的输出端。通过XTAL1、XTAL2外接晶振后,即可构成自激振荡器,驱动内部时钟发生器向主机提供时钟信号。23驱动部件本设计的驱动电路采用74LS164,74LS164是最常见的移位寄存器,移位寄存器是暂时记忆数据的“寄存器”,其特征是具有将数据向左或向右移动的功能。移位寄存器有各种形式。按存数据的位数有4位、8位等,按“输入/输出数据”形式有“串入/串出”、“串入/并出”、“并入/串出”、“并入/并入”等。图3(a)是串行输入/并行(串行)输出移位寄存器74LS164的管脚排列图。其功能表见表2所示。74LS164有两个串行数据DA、DB输入端,使用时一般把它们连在一起;为清零输入端,低电平有效,当该端加入低电平时,寄存器输出Q0Q7全为低电平。在正常情况下,清零输入端接高电平,当CP信号上升沿到来时,数据右移一位;Q0Q7为并行数据输出端,同时Q7端也是串行数据输出端,对于串行输入的数据,最后进入的从Q0输出。CP为移位脉冲。最先输入的从Q7输出,74LS164管脚图74LS164真值表 24 显示部分由于系统要显示的内容较简单,显示量不多,所以选用数码管既方便又经济。LED有共阴极和共阳极两种。如图4所示。二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)ag,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电阻。LED数码管结构原理图需说明的是当用数据口连接LED数码管adp引脚时,不同的连接方法,各段码位与显示段有不同的对应关系。通常数据口的D0位与a段连接,D1位与b段连接,D7位与dp段连接,如表3所示,表4为用于LED数码管显示的十六进制数和空白字符与P的显示段码。LED显示段码字型共阳极段码共阴极段码字型共阳极段码共阴极段码0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3BOH4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H空白FFH00H880H7FHP8CH73H注:(1)本表所列各字符的显示段码均为小数点不亮的情况。 (2)“空白”字符即没有任何显示。第3章 软件系统的设计本次实训的软件部分由主程序,静态显示子程序,中断服务程序,时、分、秒加1子程序,时、分、秒单元清零子程序组成。3.1 电子钟的主程序本设计中,计时采用定时器T0中断完成,其余状态循环调用显示子程序,当端口开关按下时,转入相应功能程序。其主程序执行流程见下图。初始化常数及定时模式及开中断启动定时器调用显示子程序开始主程序代码如下:;主程序 使用资源:R3,6位显示的指针。 ;R0,显示缓冲地址指针。 ;DPTR,段码表指针。START:MOV SP,#60H ;设置堆栈 MOV COUNT,#00H MOV TMOD,#01H ;T0,方式1,定时100ms MOV TH0,#3CH MOV TL0,#0B0H SETB EA ;开放T0中断 SETB ET0 SETB TR0 ;启动T0 MOV SCON,#00H ;串口方式0 MOV R3,#06H MOV DPTR,#TABLE MOV R0,#30H MOV SEC,#0 ;秒,分,时清0 MOV MIN,#0 MOV HOUR,#0 MOV SECL,#00H ;显示缓冲区单元清0 MOV SECH,#00H MOV MINL,#00H MOV MINH,#00H MOV HOURL,#00H MOV HOURH,#00HDISP1:MOV A,R0 ;初始化显示00.00.00 MOVC A,A+DPTR MOV SBUF,AWAIT1:JNB TI,WAIT1 CLR TI INC R0 DJNZ R3,DISP1 MOV R0,#30H MOV R3,#06HLOOP:SJMP LOOP3.2电子钟的显示子序显示子程序代码如下:;- - -显示子程序- - - ;入口参数:(R0)= 显示缓冲区地址 ;(R3)=显示位数;占用资源:ACC,DPTR,R0,R3DISP:MOV A,R0 MOVC A,A+DPTR CJNE R3,#2,A1 ANL A,#7FH A1: MOV SBUF,AWAIT:JNB TI,WAIT CLR TI INC R0 DJNZ R3,DISP MOV R0,#30H MOV R3,#06H POP PSW POP ACC RETI3.3定时器中断服务程序定时器TO用于时间计时,定时溢出中断周期设为100ms,中断进入后,判断是否到1秒钟,到了,则调用加法子程序对秒进行加1处理,处理完后返回断点地址,同时判断秒是否到了60秒,到了则对秒单元清零,同时对分进行加1操作,同样对分进行判断,到60分则对分单元清零,同时对时加1,同样也对时进行判断,到24小时,则对时单元清零,最后中断返回。 T0中断服务程序执行流程见下图:保护现场 赋初值10数是否到?NY秒值加1是否到60秒?N Y秒清0分加1是否到60分?NY分清0小时加1是否到24小时?NY小时清0恢复现场返回中断中断服务程序如下:;- - -中断服务子程序- - - - TIMER0:PUSH ACC ;保护现场 PUSH PSW MOV TH0,#3CH ;赋初值 MOV TL0,#0B0H INC COUNT ;秒计时单元增1,10次到1秒 MOV A,COUNT XRL A,#10 ;1秒到否? JZ T0_0T0_01:POP PSW ;恢复现场 POP ACC RETIT0_0:MOV COUNT,#00H ;1秒到 INC SEC ;秒单元增1 MOV A,SEC XRL A,#60 ;60秒(1分钟)到否? JZ T0_1 MOV A,SEC ;转换为BCD码 MOV B,#10 DIV AB MOV SECL,B ;秒的个位存入SECL MOV SECH,A ;秒的十位存入SECH LJMP DISP ;转显示子程序T0_1:MOV SEC,#00H ;1分到,秒单元清0 MOV SECL,#00H ;秒个位清0 MOV SECH,#00H ;秒十位清0 INC MIN ;分单元加1 MOV A,MIN XRL A,#60 JZ T0_2 ;1分到否? MOV A,MIN MOV B,#10 ;分转换为BCD码 DIV AB MOV MINL,B ;存分的个位 MOV MINH,A ;存分的十位 LJMP DISP ;转显示子程序T0_2:MOV MIN,#00H ;1分到,分单元清0 MOV MINL,#00H ;分个位清0 MOV MINH,#00H ;分十位清0 INC HOUR ;时单元加1 MOV A,HOUR XRL A,#24 JZ T0_3 ;1小时到否? MOV A,HOUR ;时转换为BCD码 MOV B,#10 DIV AB MOV HOURL,B ;存时个位 MOV HOURH,A ;存时十位 LJMP DISP ;转显示子程序T0_3:MOV HOUR,#00H ;时单元清0 MOV HOURL,#00H ;时个位清0 MOV HOURH,#00H ;时十位清0 LJMP DISP ;转显示子程序TABLE:DB 02H,9FH,24H,0CH,99H,48H,40H,1EH,01H,08H /0 1 2 3 4 5 6 7 8 9 END 第4章 设计心得两个星期的课程设计结束了,通过本次课程设计的实践,从中我学到了很多东西且感悟良多,进一步学习、掌握单片机应用系统的有关知识,加深了解单片机的工作原理。也进一步掌握简单单片机应用系统的设计、制作、调试的方法。体会到了课本联系实际,学以至用,设计思想,实际动手能力都有所提高.第一天一回来我们就去图书馆查阅相关资料,和组员一起确定流程图,方案可行后然后编写对应程序,我们做的是静态显示电子钟,然后画出硬件图并用protues进行硬件仿真可行后拟出元件清单。由于没有平PCB板,所以我们都用万能版做的,这就要求我们在设计布线上面一定要合适,而且焊接也要过关,在焊接每个元件的时候一定要注意各个输入、输出引脚,因为每个引脚都是不一样的,只要让各个引脚互相对应,才能得出正确的结果,否则,出现任何一点小的误差就会对整个系统造成毁灭性的打击。我们用的是6个74LS164来驱动6个数码管的硬件上连线比较繁琐就更要注意了。在老师的辛勤的指导下,最后我们顺利地完成了这次的课程设计。这次课程设计使我懂得了同学间的团结合作,懂得了理论联系实际,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才是正确的理论,从而提高自己实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,并决心在以后的学习中加以改正,努力练习,提高自己的动手能力。平时必须加强对一些细小环节的重视,这样才能在真正程序设计时能做到正确快速的调试成功。 第5章 附 录附录1:硬件电路原理图和连接图附录2:电子钟程序清单;时钟,计数初值00.00.00 静态显示,定时100ms;- - -内存单元分配- - - SECL EQU 30H /秒SECH EQU 31H MINL EQU 32H /分MINH EQU 33H HOURL EQU 34H /小时HOURH EQU 35HSEC EQU 36HMIN EQU 37HHOUR EQU 38HCOUNT EQU 39H /计时到1秒;1s=10100msORG 0000HLJMP STARTORG 000BHLJMP TIMER0ORG 0030H;主程序。使用资源:R3,6位显示的指针。 ;R0,显示缓冲地址指针。 ;DPTR,段码表指针。START:MOV SP,#60H ;设置堆栈 MOV COUNT,#00H MOV TMOD,#01H ;T0,方式1,定时100ms MOV TH0,#3CH MOV TL0,#0B0H SETB EA ;开放T0中断 SETB ET0 SETB TR0 ;启动T0 MOV SCON,#00H ;串口方式0 MOV R3,#06H MOV DPTR,#TABLE MOV R0,#30H MOV SEC,#0 ;秒,分,时清0 MOV MIN,#0 MOV HOUR,#0 MOV SECL,#00H ;显示缓冲区单元清0 MOV SECH,#00H MOV MINL,#00H MOV MINH,#00H MOV HOURL,#00H MOV HOURH,#00HDISP1:MOV A,R0 ;初始化显示00.00.00 MOVC A,A+DPTR MOV SBUF,AWAIT1:JNB TI,WAIT1 CLR TI INC R0 DJNZ R3,DISP1 MOV R0,#30H MOV R3,#06HLOOP:SJMP LOOP;- - -显示子程序- - - ;入口参数:(R0)= 显示缓冲区地址 ;(R3)=显示位数;占用资源:ACC,DPTR,R0,R3DISP:MOV A,R0 MOVC A,A+DPTR CJNE R3,#2,A1 ANL A,#7FH A1: MOV SBUF,AWAIT:JNB TI,WAIT CLR TI INC R0 DJNZ R3,DISP MOV R0,#30H MOV R3,#06H POP PSW POP ACC RETI ;- - -中断服务子程序- - - - TIMER0:PUSH ACC ;保护现场 PUSH PSW MOV TH0,#3CH ;赋初值 MOV TL0,#0B0H INC COUNT ;秒计时单元增1,10次到1秒 MOV A,COUNT XRL A,#10 ;1秒到否? JZ T0_0T0_01:POP PSW ;恢复现场 POP ACC RETIT0_0:MOV COUNT,#00H ;1秒到 INC SEC ;秒单元增1 MOV A,SEC XRL A,#60 ;60秒(1分钟)到否? JZ T0_1 MOV A,SEC ;转换为BCD码 MOV B,#10 DIV AB MOV SECL,B ;秒的个位存入SECL MOV SE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江银行招聘-2026年平安银行宁波分行秋季校园招聘备考考试题库附答案解析
- 四川省成都市双流区九江初级中学2025年教师招聘备考考试题库附答案解析
- 2025年宁夏回族自治区宁安医院公开招聘合同制工作人员备考考试题库附答案解析
- 三维运动合成方法-洞察及研究
- 光电材料的光驱动物件研究-洞察及研究
- 基于大数据的鲜花运输调度策略-洞察及研究
- 金融科技中的宏观视角与智能算法结合-洞察及研究
- 微震监测与解译-洞察及研究
- 第三章 整式及其加减 单元试卷(含答案)2025-2026学年北师大版七年级数学上册
- 华润商标管理制度
- 乙型肝炎护理查房
- GB/T 17554.1-2006识别卡测试方法第1部分:一般特性测试
- 电力客户的分级和分类及管理讲解课件
- 小学家长会校长发言课件
- 肾功能检查和电解质检测课件
- 基于AI的智能运维解决方案
- 智能IT运维监控平台解决方案
- 常用职业病危害风险告知卡102张
- 朋友圈里的地理--冬季南北温差大 夏季普遍高温
- 原油电脱水处理技术(行业知识)
- 金属结构制造与安装-第七章平板钢闸门的安装ppt课件
评论
0/150
提交评论