




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机系统课程设计单片机系统课 程 设 计成绩评定表设计课题 : 定时闹钟设计 学院名称 : 电气工程学院 专业班级 : 自动1304 学生姓名 : 张慢慢 学 号 : 201323020426 指导教师 : 王黎/周刚/李攀峰 设计地点 : 31-505 设计时间 : 2015-12-282016-01-08 指导教师意见:成绩: 签名: 年 月 日单片机系统课 程 设 计课程设计名称: 定时闹钟设计 专 业 班 级 : 自动1304 学 生 姓 名 : 张慢慢 学 号 : 201323020426 指 导 教 师 : 王黎/周刚/李攀峰 课程设计地点: 31-505 课程设计时间: 2015-12-282016-01-08 单片机系统 课程设计任务书学生姓名张慢慢专业班级自动1304学号201323020426题 目定时闹钟设计课题性质工程设计课题来源自拟指导教师王黎/周刚/李攀峰主要内容(参数)利用89C51单片机设计一个定时闹钟,实现功能如下:1、采用24时或12时计时,显示:时-分-秒。2、通过按键设置定时时间,并能修改时间。3、定时时间到能发出提醒声。任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅合理。主要参考资料1 张迎新单片微型计算机原理、应用及接口技术(第2版)M北京:国防工业出版社,20042伟福LAB6000系列单片机仿真实验系统使用说明书3 阎石数字电路技术基础(第五版)北京:高等教育出版社,2006审查意见系(教研室)主任签字: 年 月 日 目 录目录11绪论21.1定时闹钟概述21.2设计思想及基本功能22系统总体方案及硬件设计22.1本设计总体方案22.2选择硬件设备32.3本设计输入输出电路63软件设计73.1系统软件设计说明73.2 LED的编程思想83.3 程序调试83.4 程序流程图94系统的功能测试105总结10附录11附录A:定时闹钟原理图11附录B:系统调试图13附录C:程序代码141绪论1.1定时闹钟概述本设计是一个定时闹钟,它仅使用单片的20引脚单片机完成闹钟的全部功能。设计目的是为了学习和巩固单片机知识,使对已学过的基础知识能有更深入的理解,学会独立思考、独立思考、独立工作,以及提高对所学应用基本理论分析和解决实际问题的能力。1.2设计思想及基本功能该系统具有一般定时闹钟的最基本功能。在选取设计方案和采取元器件方面,该系统本着简单实用经济的思想,尽量简化电路设计,用最简单的电路布线和选用最经济实用的器件来达到设计要求。本设计是简单定时闹钟系统,能实现系统要求的功能:(1)能显示时时-分分-秒秒,(2)能设定和修改定时时间,(3)定时时间到后能发出报警声;而且还有附加功能,即还能设定和修改当前所显示的时间。2系统总体方案及硬件设计2.1本设计总体方案本设计使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。本系统采用单片机AT89C51作为本设计的核心元件,利用7段共阴LED作为显示器件。接入共阴LED显示器,可显示时,分钟,秒,单片机外围接有定时报警系统,定时时间到,扬声器发出报警声,提示预先设定时间电器的起停时间到,从而控制电器的起停。电路由下列部分组成:时钟电路、复位电路、控制电路、LED显示,报警电路,芯片选用AT89C51单片机2.2选择硬件设备单片机:选择AT89C51;液晶显示器:具有16字符显示功能的1601LED:选择红色的发光二极管基本元件:蜂鸣器,电容,晶体振荡器,电阻,开关1、单片机:选择AT89C51,如图2-1:图2-1 AT89C51的引脚图数码管显示电路单片机中通常使用7段LED,LED是发光二极管显示器的缩写。LED显示器由于结构简单,价格便宜,体积小,亮度高,电压低,可靠性高,寿命长,响应速度快,颜色鲜艳,配置灵活,与单片机接口方便而得到广泛应用。LED显示器是由若干个发光二极管组成显示字段的显示部件,当发光二极管导通时,相应的一个点或一个笔划发光,控制不同组合的二极管导通,就能显示出各种字符。LED七段数码显示器由8个发光二极管组成显示字符,根据内部发光二极管的连接形式不同,LED有共阴极和共阳极两种,本系统采用共阴极。图2-2 “8”字形数码管LED显示原理当选用共阴极的LED时,所有发光二极管阴极连在一起接地,当某个发光二极管的阳极加入高电平时,对应的二极管点亮。因此要显示某字形就应使此字形的相应段的二极管点亮,实际上就是送一个用不同电平组合代表的数据字来控制LED的显示,此数据为字符的段码或称为字型码。字型码与LED显示器各段的关系如表2-1:表2-1 字型码与LED显示器各段的关系表D7D6D5D4D3D2D1D0dpGFedcbadp为小数点,字符0、1、2F的段码,如表2-2:表2-2 字符0、1、2F在dp为小数点的段码字符段码(共阴)段码(共阳)03FHCOH106HF9H25BHA4H34FHB0H466H99H56DH92H67DH82H707HF8H87FH80H96FH90HA77H88HB7CH83HC39HC6HD5EHA1HE79H86HF71H8EH-40HBFH.80H7FH熄灭00HFFH图2-3是本系统采用的共阴极LED七段数码显示器:图2-3 LED七段数码显示器2.3本设计输入输出电路该系统输入电路采用的是P1口以及4个上拉电阻,其阻值为10千欧。其图2-4如下:图2-4 系统输入电路系统的输出电路采用的是P0口和P2口,喇叭口采用P3.7口。其电路如图2-5:图2-5 系统的输出电路(局部)3软件设计3.1系统软件设计说明该系统软件程序主要有主程序模块,定时中断服务程序,中断等待服务程序,键盘服务程序,显示子程序服务程序等六大模块组成。在AT89C51外围的一个17管脚即P3.7管口上加扬声器,通过软件与硬件的结合可实现定时报警功能。图中按键从上往下设定为S1,S2,S3,S4,S1与p1.4相连,S2与p1.3相连,S3与p1.2相连,S4与p1.1相连。当需要设定当前时间时,按一下S4键,进入时间设定状态,按一下S2,分钟加1;按一下S3,小时加1。如此反复来设定当前时间。调好时间后按S1退出当前时间设定状态;当要设定定时时间时,按下S3,进入定时时间设定状态,按一下S2,小时加1;按一下S4,分钟加1。如此反复来设定要设定的定时时间。设好后,按下S1退出定时时间设定状态。3.2 LED的编程思想本设计使用LED数码管显示,LED显示器具有耗电少、成本低、配置简单灵活、安装方便、耐震动、使用寿命长等优点,因而应用广泛。该方案控制最简单,但是只能显示有限的符号和数字,对于设计中复杂的显示功能显然不能胜任。虽然点阵液晶可以显示多种字符和图形,拥有友好的人机界面及强大的显示功能。特别适用于智能控制的可编程人性化显示。但是考虑到本设计的实际要求,使用数码管显示就足以达到要求了。七段LED由六个发光二极管按日字排开,所有发光二极管的阳极连在一起成共阳极,阴极连在一块称共阴极接法。当采用芯片驱动时不需要加限流电阻,其他情况下一般应外接限流电阻。动态显示电路有显示块,字形码封锁驱动器,字位锁存驱动器三部分组成。3.3 程序调试1)将程序输入到伟福的环境下;2)用单步运行和断点运行方式调试程序;3)调试T0中断服务程序,首先在记数单元39H、3AH、3BH、3CH单元中预置数,调试秒单元向分单元进位及分单元向时单元的进位,最后将T0中断服务程序统调通过;4)在39H、3AH、3BH、3CH单元中预置数,调试显示程序;5)调试主程序,使闹钟走时系统工作正常。3.4 程序流程图本设计程序流程图如图3-1所示:图3-1 定时闹钟启用流程图4系统的功能测试硬件调试的主要任务是排除硬件故障,其中包括设计错误和工艺性故障。首先进行脱机调试,用万用表逐步检查各个引脚,尤其是电源是否连接正确,单片机芯片是否正确插入底座。其次进行联机调试,连接线路。图中按键从上往下设定为S1,S2,S3,S4,S1与p1.4相连,S2与p1.3相连,S3与p1.2相连,S4与p1.1相连。设定当前时间:当需要设定当前时间时,按一下S4键,进入时间设定状态,按一下S2,分钟加1;按一下S3,小时加1。如此反复来设定当前时间。调好时间后按S1退出当前时间设定状态。设定定时时间:当要设定定时时间时,按下S3,进入定时时间设定状态,按一下S2,小时加1;按一下S4,分钟加1。如此反复来设定要设定的定时时间。设好后,按下S1退出定时时间设定状态。扬声器发出报警声,且扬声器两端同时变为高电平。本次调试的过程中遇到过一些困难,比如数码管显示不出来或者显示乱码,按键不起作用,无法生成HEX文件等等,通过多次调试排除各个故障点,才得以实现倒计时功能,调试效果图见附录B。5总结在设计定时闹钟的课程设计的过程中,我深切的体会到了实践是理论运用的最好检验。本次设计是对我这一学期所学知识的一次综合性的检测和考验,无论是动手能力还是理论知识运行能力都得到了一定的提高,同时加深了我对网络资源的认识,大大提高了查阅资料的能力和效率,使我能有更多的时间去调试软件的部分。这次设计要求我们有丰富的编程经验,还要能看懂单片机开发板的各种原理图,能熟悉那些I/O口的作用,且能够准确的运用数电等方面的知识。在软件调试的过程中,我学会了不少东西,掌握了一些调试软件的方法。同时也巩固了用protel99se绘制电路原理图的知识,这次课程设计使我掌握了很多实践知识,在老师和同学的帮助下对单片机有了进一步的了解。生活也是这样,汗水预示着结果,见证着收获。劳动是人类生存生活永恒不变的话题。通过实践,我才真正领略到“艰苦奋斗”这一词的真正含义,我才意识到老一辈设计员为我们的社会付出。这次课程设计对我来说有着很大的意义,让我对未来的路看的更清楚了一些。在此我要深深的感谢那些传授我知识的老师们,是你们无私的奉献,才会有如今掌握一定知识的我们。附录附录A:定时闹钟原理图附录B:系统调试图附录C:程序代码ORG 0000H LJMP MAIN ORG 000BH LJMP TIME ;主程序部分: ORG 0100H MAIN:MOV SP,#50H MOV 20H,#00H ;秒钟BIN MOV 21H,#00H ;分钟BIN MOV 22H,#00H ;小时BIN MOV 23H,#01H MOV 24H,#01H MOV 25H,#00H MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00H MOV 34H,#00H MOV 35H,#00H MOV 36H,#01H MOV 37H,#00H MOV 38H,#01H MOV 39H,#00H MOV TMOD,#01H ;16位计数器 MOV TH0,#03CH ;赋计数初值 MOV TL0,#0B0H MOV IE,#10000111B SETB TR0 ;T0启动计数 MOV R2,#14H MOV P2,#0FFH LOOP: LCALL TIMEPRO LCALL DISPLAY1 JB P1.1,M1 LCALL SETTIME ;调用设定时间程序 LJMP LOOP M1:JB P1.2,M2 LCALL SETATIME ;调用设定时间程序 LJMP LOOP M2:JB P1.4,M4 LCALL LOOKATIME ;调用设定闹钟时间程序 M4:LJMP LOOP DELAY:MOV R4,#030H ;延时时间 DL00:MOV R5,#0FFH DL11:MOV R6,#9H DL12:DJNZ R6,DL12 DJNZ R5,DL11 DJNZ R4,DL00 RET ;设定时间程序: SETTIME: L0:LCALL DISPLAY1 ;调用时间允许程序 MM1: JB P1.2,L1 MOV C,P1.2 JC MM1 LCALL DELAY1 ;调用延时 JC MM1 MSTOP1: MOV C,P1.2 JNC MSTOP1 ;判断P1.2是否释放?释放则继续 LCALL DELAY1 ;调用延时 MOV C,P1.2 JNC MSTOP1 INC 22H ;小时增加1 MOV A,22H CJNE A,#18H,GO12 ;判断小时是否到24时?未到继续循环 MOV 22H,#00H ;小时复位 MOV 34H,#00H MOV 35H,#00H LJMP L0 L1:JB P1.3,L2 MOV C,P1.3 JC L1 LCALL DELAY1 ;延时 JC L1MSTOP2: MOV C,P1.3 JNC MSTOP2 ;判断P1.3是否释放?释放则继续 LCALL DELAY1 ;调用延时 MOV C,P1.3 JNC MSTOP2 INC 21H ;分钟增加一 MOV A,21H CJNE A,#3CH,GO11 MOV 21H,#00H ;分钟复位 MOV 32H,#00H MOV 33H,#00H LJMP L0 GO11:MOV B,#0AH ;将A中的内容分成高低两部分 DIV AB MOV 32H,B MOV 33H,A LJMP L0 GO12: MOV B,#0AH DIV AB MOV 34H,B MOV 35H,A LJMP L0 L2:JB P1.4,L0 MOV C,P1.4 JC L2 LCALL DELAY1 ;调用延时 MOV C,P1.4 JC L2STOP1: MOV C,P1.4 ;判断按键P1.4是否释放? JNC STOP1 LCALL DELAY1 ;调用延时 MOV C,P1.4 JNC STOP1 LJMP LOOP;设置闹钟时间 SETATIME:LCALL DISPLAY2 ;调用时间运行 N0:LCALL DISPLAY2 MM2: JB P1.3,N1 ;判断P1.3是否按下? MOV C,P1.3 JC MM2 LCALL DELAY1 JC MM2MSTOP3: MOV C,P1.3 ;判断P1.3是否释放? JNC MSTOP3 LCALL DELAY1 MOV C,P1.3 JNC MSTOP3 INC 24H ;设定小时增加1 MOV A,24H CJNE A,#24,GO22 MOV 24H,#00H ;时钟复位 MOV 38H,#00H MOV 39H,#00H LJMP N0 N1:JB P1.1,N2 ;判断P1.1是否按下? MOV C,P1.1 JC N1 LCALL DELAY1 JC N1MSTOP4: MOV C,P1.1 ;判断P1.1是否释放? JNC MSTOP4 LCALL DELAY1 MOV C,P1.1 JNC MSTOP4 INC 23H ;设定闹钟分钟增加1 MOV A,23H CJNE A,#60,GO21 ;判断A是否到60分? MOV 23H,#00H ;分钟复位 MOV 36H,#00H MOV 37H,#00H LJMP N0 GO21:MOV B,#0AH ;将A中的内容分成高低两部分 DIV AB MOV 36H,B MOV 37H,A LJMP N0 GO22: MOV B,#0AH DIV AB MOV 38H,B MOV 39H,A LJMP N0 N2:JB P1.4 ,N0 ;判断P1.4是否按下? MOV C,P1.4 JC N2 LCALL DELAY1 MOV C,P1.4 JC N2STOP2: MOV C,P1.4 ;判断P1.4是否释放? JNC STOP2 LCALL DELAY1 MOV C,P1.4 JNC STOP2 LJMP LOOP TIMEPRO:MOV A,21H MOV B,23H CJNE A,B,BK ;判断分钟是否运行到设定的闹钟的分钟? MOV A,22H MOV B,24H CJNE A,B,BK ;判断时钟是否运行到设定的闹钟的时钟? SETB 25H.0 MOV C,25H.0 JC XX XX: LCALL TIMEOUT ;调用时间闹钟响应程序 BK:RET TIMEOUT: X1:LCALL BZ ;调用喇叭响应程序 LCALL DISPLAY2 CLR 25H.0 JB P1.4, X1 ;判断P1.4是否按下? LCALL DELAY CLR 25H.0 LJMP DISPLAY1 BZ: CLR P3.7 ;喇叭响应程序 MOV R7,#250 ;响应延时时间 T2: MOV R6,#124 T3: DJNZ R6,T3 DJNZ R7,T2 SETB P3.7 RET LOOKATIME:LCALL DISPLAY2 ;调用时间运行程序 MM: JB P1.4,LOOKATIME ;判断按键P1.4是否按下 MOV C,P1.4 JC MM LCALL DELAY1 MOV C,P1.4 JC MMSTOP3: MOV C,P1.4 JNC STOP3 LCALL DELAY1 MOV C,P1.4 JNC STOP3 LJMP LOOP DELAY1: MOV R4,#14H ;时间延时DL001: MOV R5,#0FFHDL111: DJNZ R5,DL111 DJNZ R4,DL001 RET;时间运行程序TIME: PUSH ACC ;现场保护 PUSH PSW MOVTH0,#03CH ;赋初值 MOVTL0,#0B0HDJNZR2,RET0MOVR2,#14HMOVA,20HCLR CINC A ;秒钟自加1CJNE A,#3CH,GO1 ;判断秒钟是否到60秒?MOV20H,#0 ;到60秒复位 MOV 30H,#0 MOV 31H,#0MOVA,21HINCA ;分钟自加1 CJNEA,#3CH,GO2 ;判断分钟是否到60分? MOV 21H,#0H ;到60分复位 MOV 32H,#0 MOV 33H,#0MOVA,22HINCA ;时钟自加1CJNEA,#18H,GO3 ;判断时钟是否到24时?MOV 22H,#00H ;到24时复位 MOV
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 地质勘探与矿产资源评价试题
- 艺术设计基础理论与创作实践题集
- 2025年应急管理专业资格考试试题及答案
- 2025年信息公开与政府透明度考试试题及答案
- 2025年网络工程与信息安全的实务能力测试题及答案
- 2025年老龄化社会与养老服务考试试卷及答案
- 2025年金融风险管理与金融科技考试试卷及答案
- 2025年健康教育与促进能力评估题及答案
- 2025年创新管理与企业发展考试试卷及答案
- 2025年产品设计与市场匹配考试试卷及答案
- 公安院校及专业招生政审表
- 史上最全区块链详解课件
- (完整版)杭州电子科技大学数字电路期末考试试卷及答案
- 建筑装饰装修工程质量验收规范试题
- 能源计量器具配备和管理
- 《食品经营许可证》申请报告书空白模板
- 试卷交接签字单
- 有限空间作业及应急物资清单
- DB13(J)∕T 8060-2019 城镇供热管道及设备安装工程施工质量验收标准
- 《国际商务》课程
- 压力容器设计管理制度
评论
0/150
提交评论