![单片机课程设计_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-8/27/d83f0fac-ab6d-40c6-a892-a26395ed8698/d83f0fac-ab6d-40c6-a892-a26395ed86981.gif)
![单片机课程设计_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-8/27/d83f0fac-ab6d-40c6-a892-a26395ed8698/d83f0fac-ab6d-40c6-a892-a26395ed86982.gif)
![单片机课程设计_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-8/27/d83f0fac-ab6d-40c6-a892-a26395ed8698/d83f0fac-ab6d-40c6-a892-a26395ed86983.gif)
![单片机课程设计_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-8/27/d83f0fac-ab6d-40c6-a892-a26395ed8698/d83f0fac-ab6d-40c6-a892-a26395ed86984.gif)
![单片机课程设计_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-8/27/d83f0fac-ab6d-40c6-a892-a26395ed8698/d83f0fac-ab6d-40c6-a892-a26395ed86985.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录一、设计目的:1二、硬件系统:2三、软件系统:5四、仿真结果9五、课程总结:11六、参考文献12附:实验源程序13一、设计目的: 由单片机接收小键盘阵列设定倒计时时间,倒计时的范围最大为60分钟,由LED 显示模块显示剩余时间,显示格式为 XX(分):XX(秒).X,精确到0.1s的整数倍。倒计时到,由蜂鸣器发出报警。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能。此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。通
2、过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。二、硬件系统:1.硬件总电路图:2
3、.子系统描述a. 晶振及复位电路: 由于单片机内部振荡方式电路简单,时钟信号比较稳定,是独立的单片机应用系统的首选,故本设计采用内部振荡方式,采用12MHZ的晶振。a晶振电路图b. 本设计电路采用定时器T0产生定时中断,由于本设计需要0.1s的基本时间,故选择其工作在定时方式1下。这时定时器T0是一个16位的计时器,由它产生50ms的基本定时中断,两次中断后将得到0.1s的时间。c. 键盘电路有独立式键盘和矩阵式两种。独立式键盘占用I/O口线较多,适用于按键较少的情况。矩阵式键盘占用的I/O口相对较少,适用于按键很多的情况。b键盘电路图d. 报警电路将采用p3.0口驱动,当数码管显示00.00
4、.0时p3.0口输出高电平,驱动蜂鸣器达到报警的目的,只有当复位键按下后,蜂鸣器才会停止报警。c蜂鸣器报警电路图e. 对于显示电路,本设计采用6位8段共阴极LED数码管显示。上电显示最大倒计时时间60.00.00-。其中“-”位为系统状态标志位,当显示“-”时,表示系统处于等待状态,按下开始键后将开始计数,开始计数后此数码管将关闭显示,以达到省电的目的 ,当显示“E”时,表示系统正处于调时状态,此时只用两个调时键有用,按下开始键或复位键将没有用。d显示电路图硬件连接说明:本系统以AT89C51单片机为核心。单片机采用内部振荡的方式。通过200欧姆电阻与一个6位8段LED数码显示管相连。从P0口
5、输出LED数码管的字形码,从P2口输出LED数码管的位选码,高电平有效。4个功能按键和P1口相连,中间通过10K的电阻与+5V电源相连,按键另一端接地,P1口低电平时表示按键被按下。报警电路则与P3.0口相连,当P3.0口输出高电平时,蜂鸣器响。三、软件系统:1.系统总流程图YNYNNYNYNNNYYYY开始关闭定时器、蜂鸣器复位键按下?标志位、显示管查表码初始化定时器设置初始化开中断调用显示子程序调时设置键按下?调用消抖延时子程序开始/暂停键按下?开始/暂停键按下?调用消抖延时子程序开始/暂停标志位取反等待按键释放等待按键释放调用调时子程序等待按键释放20H.0=1?置位状态显示管标志位P3
6、.0=0?置位P2.5复位键按下?调用消抖延时子程序调时设置键按下?启动定时器T0NNYNR0为#39H?YYYNNNNNNNNNYYYYYYYYYY调用显示子程序P1.3=0?开始调用消抖延时子程序P1.3=0?等待按键释放R0=#44H?R0为#06H?MOV R0,#00HR0=#43H?3R0为#05H?R0为#09H?MOV R0,#00HMOV R0,#00HINC R0INC R0INC R0P1.2=0?P1.2=0?调用消抖延时子程序等待按键释放DEC R044H=#06H?R0=#42H?3调试子程序流程图子程序返回 T0中断子程序流程图NNYYYYNN开始40H=0?41
7、H=0?42H=0?43H=0?44H=0?DEC 40HSETB P3.0DEC 40H启动T0中断返回NNNNNYYYY将40H置940H=0?41H=0?42H=0?43H=0?44H=0?DEC 42HDEC 40HDEC 40HDEC 41H将40H置9将41H置9将40H、41H、43H置9,42H置5将40H、41H置9,42H置5四、仿真结果1. 上电后LED数码管显示最大倒计时值60.00.0-,程序处于等待状态。 上电或者复位键被按下时2. 此时,主程序不断调用显示子程序以及扫描键盘按键情况,当检测到有键按下后,转到相应的程序执行。3. 开始/暂停键按下后程序开始减1计数直
8、到0,同时状态显示管熄灭,计数值到0后报警器响。若中途遇到开始/暂停键按下则,暂停倒计时。若中途遇到复位键按下则将倒计时器的倒计时值设置为最大值,并处于等待状态。 计数值到0时 开始/暂停键按下后4. 复位键按下后,程序复位,系统处于等待状态,状态显示管显示“-”。 5. 当设置键被按下后,程序进入调时设置状态,同时状态显示管显示“E”。设置状态的初始值位00.00.0E,按下+1调整键,可以将当前的计数单位值加1,再次按下设置键后,即进入了下个计数单位的调时状态,当按下5次设置键后将退出调时状态,若分钟十位被设置为6并再次按下设置键后程序直接退出调时状态。设置状态时开始/暂停键和复位键无效,
9、等退出调时状态后,设置状态时开始/暂停键和复位键恢复功能。 调时状态时五、课程总结: 课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在,作为二十一世纪的大学生来说掌握单片机的开发技术是十分重要的。 通过本次单片机原理及应用课程设计使我充分认认到了课程设计的理要性和必要性,本次设计使我对已学过的基础知识有了更深入的理解,学会了独立思考、独立工作以及对应用所学基本理论分析和解决实际问题的能力有了很大的提高。另外,本
10、次设计使我的实际操作技能得到了训练, 同时也进一步培养了我严谨的科学作风。 回顾起此次单片机课程设计,从选题到定稿,从理论到实践,在整整一星期的日子里,可以说得是苦多于甜,但是从中却学到很多很多的的东西,不但巩固了以前所学过的知识,而且对单片机原理课外知识也的到了拓展。做的过程中,开始的确遇到了不少困难的问题,比如说芯片管脚不熟悉怎么放置,对单片机汇编语言掌握得不好等等,同时在这过程中也发现了自己的许多不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。 通过单片机课程设计之后,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我们还学会了如何去培养创新精神和严谨的科学
11、作风,从而不断地战胜自己,超越自己。更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。 另外,课堂上也有部分知识不太清楚,于是我又不得不边学边用,时刻巩固所学知识,这也是我作本次课程设计的第二大收获。整个设计我基本上还满意,由于水平有限,难免会有错误,还望老师批评指正。六、参考文献1 曾屹.单片机原理与应用.湖南:中南大学出版社,20092 丁元杰.单片微机原理及应用.3版.北京:机械工业出版社,20063 严天峰.单片机应用系统设计与仿真调试.北京:北京航空航天大学出版社,20054 杨振江.流行单片实用子程序及应用实例.西安:电子科技大学出版社,2002附:实验源程序 ;倒计时器
12、设计源程序ORG 0000H AJMP MAIN ORG 000BH ;T0中断程序入口地址 AJMP T0ZD ORG 00100HMAIN:CLR TR0 ;主程序开始 CLR P3.0 ;关闭蜂鸣器 SETB 20H.1 ;使显示管状态标志位有效 CLR 20H.0 ;开始/暂停标志位,使程序处于等待开始|暂停键按下 MOV 40H,#00H ;0.1S位查表码 MOV 41H,#00H ;秒钟个位位查表码 MOV 42H,#00H ;秒钟十位位查表码 MOV 43H,#00H ;分钟个位位查表码 MOV 44H,#06H ;分钟十位位查表码 MOV 45H,#00H ;状态显示管查表码
13、 MOV 46H,#02H ;定时器定时次数 SETB EA ;开总中断 SETB ET0 ;开定时器T0中断 MOV TMOD,#01H ;定时器工作方式0 MOV TL0,#0B0H ;定时初值,采用50MS定时 MOV TH0,#3CHJPJC:LCALL XSCX ;显示倒计时初值60.00.0(XSCX),进入键盘检测程序 MOV P1,#0FFH ;判断复位键是否按下 JB P1.0,JC12 LCALL XDYS ;调用消抖延时程序(XDYS) JB P1.0,JC12PP10:JNB P1.0,DP10 ;等待按键按下 AJMP MAIN ;复位键按下后转到主程序(MAIN)重
14、新开始JC12:MOV P1,#0FFH ;判断设置键是否按下 JB P1.2,JC11 LCALL XDYS JB P1.2,JC11PP12:JNB P1.2,DP12 ;调整设置键按下后转到调时子程序(TSCX) ACALL TSCXJC11:MOV P1,#0FFH ;判断开始/暂停键是否按下 JB P1.1,JPJC LCALL XDYS JB P1.1,JPJCPP11:JNB P1.1,DP11 CPL 20H.0 ;将标志位取反 JB 20H.0,KSJS ;开始/暂停标志为1则开始计数(KSJS) CLR TR0 SETB 20H.1 AJMP JPJC ;继续检测键盘按键情
15、况(JPJC)DP10:LCALL XSCX ;等待按键按下时,调用显示程序,防止显示管没显示 AJMP PP10DP11:LCALL XSCX AJMP PP11DP12:LCALL XSCX AJMP PP12KSJS:CLR 20H.1 ;清除状态显示管 SETB P2.5 JB P3.0,JPJC ;若蜂鸣器响,则不启动计时器 SETB TR0 ;启动计时器TO (KSJS) AJMP JPJC; 显示子程序XSCX:MOV DPTR,#TAB ;显示子程序(XSCX) MOV A,40H MOVC A,A+DPTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出
16、0.1S位的显示段码. CLR P2.0 ;P2.0=0 ACALL XSYS MOV DPTR,#TAB1 ; MOV A,41H MOVC A,A+DPTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出秒钟个位的显示码. CLR P2.1 ;P2.1=0 ACALL XSYS MOV DPTR,#TAB MOV A,42H MOVC A,A+DPTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出秒钟十位位的显示段码. CLR P2.2 ;P2.2=0 ACALL XSYS MOV DPTR,#TAB1 MOV A,43H MOVC A,A+D
17、PTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出分钟个位的显示段码. CLR P2.3 ;P2.3=0 ACALL XSYS MOV DPTR,#TAB MOV A,44H MOVC A,A+DPTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出分钟十位的显示段码. CLR P2.4 ;P2.4=0 ACALL XSYS JNB 20H.1,ZBTC ;20H.1为1则显示计时器状态 MOV DPTR,#TAB2 MOV A,45H MOVC A,A+DPTR MOV P2, #0FFH ;关闭显示. MOV P0, A ;输出段码. CLR
18、 P2.5 ;P2.5=0 ACALL XSYSZBTC:RET; 调时子程序TSCX:CLR TR0 ;调时子程序(TSCX) CLR 20H.0 ;使时间调整时处于暂停状态 MOV 40H,#00H MOV 41H,#00H MOV 42H,#00H MOV 43H,#00H MOV 44H,#00H SETB 20H.1 ;使状态显示管的位选码有效 MOV 45H,#01H ;将状态显示码更改为E(调时状态) MOV R0,#44HJCTZ:ACALL XSCX ;先调用显示程序,扫描时间调整键 MOV P1,#0FFH JB P1.3,NEXT ;+1键盘没有按下 ACALL XDYS
19、 ;键盘按下,消抖延时 JB P1.3,NEXTDEN0:JNB P1.3,DEN1 ;等待按键释放 AJMP JYCX ;+1键按下后,跳转到+1程序NEXT:MOV P1,#0FFH JB P1.2,JCTZ ACALL XDYS ;键盘按下,消抖延时 JB P1.2,JCTZDEN2:JNB P1.2,DEN3 ;等待按键释放 MOV A,44H CJNE A,#06H,DEC4 ;设置键再次按下,将调整指针指向下一位 AJMP TCTSDEC4:DEC R0 CJNE R0,#3FH,JCTZ ;若R0为3FH则退出调时程序 AJMP TCTS ;若R0不为#06H,但R0为#3FH,
20、则跳出调时程序JYCX:CJNE R0,#44H,XIA1 ;加1调时部分 CJNE R0,#06H,INCR ;调整分钟十位 AJMP SET0XIA1:CJNE R0,#43H,XIA2 AJMP TZ09 ;调整分钟个位XIA2:CJNE R0,#42H,XIA3 CJNE R0,#05H,INCR ;调整秒钟十位 AJMP SET0XIA3:CJNE R0,#41H,XIA4 AJMP TZ09 ;调整秒钟个位XIA4:CJNE R0,#40H,TCTSTZ09:CJNE R0,#09H,INCR ;调整0.1秒位SET0:MOV R0,#00H AJMP JCTZINCR:INC R
21、0 AJMP JCTZDEN1:ACALL XSCX AJMP DEN0DEN3:ACALL XSCX AJMP DEN2TCTS:MOV TH0,#3CH ;退出调时程序 MOV TL0,#0B0H MOV 45H,#00H ;将状态显示码更改为D(等待状态) RET; T0中断子程序T0ZD:CLR EA ;T0中断子程序,关中断 (T0ZD) CLR ET0 CLR TR0 DJNZ 46H,TCZD MOV 46H,#02H ;当定时两次后重新给计时次数赋值为2 MOV R0,#40H ;减1计数,R0为40H CJNE R0,#01H,R040 INC R0 ;R0为41H CJNE R0,#00H,DEC1 INC R0 ;R0为42H CJNE R0,#00H,DEC1 INC R0 ;R0为43H CJNE R0,#00H,DEC1 INC R0 ;R0为44H CJNE R0,#00H,DEC1 AJMP JYFHR040:CJNE R0,#00H,DEC1 ;R0为40H INC R0 ;R0为41H CJNE R0,#00H,R041 INC R0 ;R0为42H CJNE R0,#0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025火电厂燃料验收设备管理标准
- 二零二五版培智学校图书资源管理与物业管理服务协议
- 全身体检的要点、难点及注意事项课件
- 二零二五版木工机械操作安全责任状协议
- 2.3.1透镜(课件)八年级物理第一学期同步
- 《食道炎与食道癌》课件
- 棉鞋里的阳光课件
- (高清版)JJF(皖) 202-2025 四氟化碳气体检测仪规范
- 《月技术案例分享》课件
- 《资本与增长》课件2
- 快递运营实务项目2快递网点业务管理课件
- 瑞幸咖啡SWOT分析
- DL∕T 1867-2018 电力需求响应信息交换规范
- 影视文学教程整本书课件完整版电子教案全套课件最全教学教程ppt(最新)
- 防火门监控系统调试、检测、验收记录
- “大水利”概念及其意义
- 小学生品德发展水平指标评价体系(小学)
- 纸张克重、厚度对照表
- 《铁路桥梁检定评估工作规则》铁运2004第42号
- 危险化学品建设项目安全评价流程.doc
- 2021年云南省中考数学试题及答案(清晰版)
评论
0/150
提交评论