ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:334.01KB ,
资源ID:5956994      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5956994.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计模板DOC.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计模板DOC.docx

1、单片机课程设计模板DOC单片机原理及应用课程设计报告专 业: 班 级: 姓 名: 指导教师: 20 年月 日目录1.设计目的及要求 41.1设计目的 412设计要求 42. 数字钟的设计方案 52.1数字钟功能 52.2设计思路 52.3 设计流程图 53. 数字钟硬件电路设计 64. 数字钟软件设计 94.1 初始化模块 94.2 显示模块 94.3 按键模块 104.4定时和延时模块 105. 仿真与调试 105.1 软件仿真 1052 硬件连接 1353 硬件测试 136. 心得体会 147. 指导老师及意见 148. 附录 16基于单片机的数字钟设计1.设计目的及要求1.1设计目的(1

2、)学会掌握KeilC51汇编语言程序的设计和调试,熟悉51系列单片机结构特点,掌握软件设计的基本思路和基本方法。(2)学会用汇编语言编写程序,并在电脑上会调用和检测程序的正确与否。学会MCS-51单片机上下载程序并验证。(3)学会将所学的单片机原理的有关知识应用于实践,提高单片机应用于技术的实践操作技能,掌握单片机应用系统设计、研制的方法,培养理论联系实际的学习作风,提高动手能力、分析并解决实际问题的能力。(4)使我们进一步了解掌握所学的专业知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/控制、程序设计、应用开发、等基本理论知识的理解。(5)通过设

3、计、分析、调试,培养我们工程意识,激发大家对产品开发的兴趣,及培养对科技革新、开发和创新的基本能力。 12设计要求 (1)以MCS-52系列单片机,AT89C52为核心器件组成一个数字时钟系统。(2)系统显示器由六位数码管组成,分别显示小时,分钟和秒。2. 数字钟的设计方案2.1数字钟功能 A.初始化显示00:00:00 B. P0.0,P0.1,P0.2分别接跳帽开关,P0.0按一下,秒钟加1;P0.1按 下分钟加1;P0.2按一下,小时加1. C.复位电路,开关按下,重新回到初始化状态2.2设计思路对于数码管而言,数码管选共阴极数码管,对于每一个数码管,3,8脚接片选,给3.8脚接低电平,

4、数码管选中,如此才可以亮。电路复位通过硬件电路实现,开关复位时,出于初始化状态,p3口接片选,p2口接数码管的七段。P0.0 P0.1 P0.2接开关,开关控制时分秒,调整时分秒,让时分秒与实际时间相一致。2.3 设计流程图3. 数字钟硬件电路设计 (此部分计算机专业同学不写,也请反映在目录及相关章节中)3.1 时钟电路设计本实验选用12MHZ 晶振作为外部晶振。即在 AT89S52的18和19脚(xtal1和xtal2)之间接一个12MHZ晶振,如图3.1图3.13.2 复位电路设计在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电

5、平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位,具体见下图3.2如图3.23.3 按键电路设计在做出时间调整的时候,共三个开关,分别控制着时分秒的调整,直至等到时间调整正确为止。在判断开关是否按下的同时,因为按下开关为跳帽开关,抖动产生因为机械固有的物理特性,在瞬间接触的时候会有力学的回弹,造成

6、2-8毫秒内信号不稳定。因此我们的办法就是通过软件设定一个延时来去抖动,解决信号不稳定的因素,具体见图3.3图3.33.4 数据显示电路设计时分秒的控制需要六个数码管,每个数码管的七段分别接在一起,通过p2口输出,先要弄清楚数码管的各个接口,在实验前可以对数码管进行检测,看数码管各段是否可以正常工作。3,8接地,用3V左右电压去接数码管的各段,看数码管各段是否对亮。如图3.4是数码管的各引脚及led显示字形码表,图3.5是数码管仿真图引脚及片选设置。图3.4图3.54. 数字钟软件设计4.1 初始化模块初始化模块中,时分秒初始化状态显示00:00:00,将时分秒各个数据放在各自的寄存器中,通过

7、查表将00分别送给各个寄存器4.2 显示模块显示模块一直贯穿在整个过程中,首先我们选择的数码管是共阴极的,因此当我们给p3口低电平(清零信号)时,数码管被选中,通过延时子程序延时后再选中另外一个,不断的扫频,通过时分秒寄存器中值的变化完成各个模块之间的互连,最后通过查表显示。下面以秒作为例子说明显示模块是如何统一各个模块的。初始化时,显示00,是通过51单片机的p3.4,p3.5口分别控制秒的个位和十位,时间推移,秒钟不断加1,加1自然要延时1S,所以就涉及中断计时的问题,故每次计时1S,寄存器中值自加1,查表过程中A片偏移自增1,00-01-02-03-04-05-09-10-59-00.,

8、所以在累加的过程中又存在比较大小(CJNE指令),秒钟寄存器中回零,此时显示分钟,分钟寄存器中加1如此不断反复,之后分钟加一,到59S回0,小时寄存器中加1,和前面不一样的地方就是小时最后在比较时是与24比较。到了24:59:59之后回零,又回到初始化状态。4.3 按键模块 按键模块的功能进行时间的简单调整,三个开关分别和P0.0 P0.1 P0.2,通过JNB判断语句来判断是否按键。通过跳转指令使按一下,数码管加。4.4定时和延时模块因为需要延时S,所以必须要通过定时器T通过查询方式定时S,查询方式就要判断寄存器是否溢出。因为需要对数码管进行扫频,所以有一个扫频时间,因此就需要一个延时子程序

9、来延时一段时间来扫频,只是要确定扫频的时间长短,通过我们小组的多次实验,可以发现延时稍长为好,但是还是不能超过人眼的识别范围。5. 仿真与调试5.1 软件仿真 如下图所示的软件仿真的结果,在软件仿真中我们可以清楚的看到数码管上显示的数字,即所谓的时间,通过六个数码管我们可以看到时,分,秒各位的显示,这样达到了所要求的目的。()生成.hex文件的基本操作: ()点击isis仿真图的单片机(双击),加载.hex文件,点击OK。(3).开始仿真。看实验现象是否能够满足设计要求。52 硬件连接根据下列电路图的连线在电路板上焊接电路 53 硬件测试烧程序,利用烧写器及相关软件将.hex下载到单片机中,接

10、入电路,接5V电源。观察现象。6.心得体会通过这两周课程的实习设计,对单片机的编程软件KEIL51有了进一步的熟悉,学会了自己分析,修改程序,以完成不同功能程序的编程,这次实验做的是数字钟,最后基本完成老师要求的功能,时间显示和调整,日期显示和调整及闹铃等功能。由于大家做的功能都差不多,所以自己就多添加了时间秒设置及闹钟秒设置功能,虽然在实际生活中用的数字钟没必要做到这个功能,但毕竟自己有去想,有去做,并且能够得到实现,也是对自己的进步的一个肯定。实习过程中知道了不只是要求做到什么结果,更重要的是从中学到了什么,这才能达到锻炼自己的目的,以及和同学们一起讨论,共同分析,学会吸取他人好的观点改正

11、自己的不足,以及同他人的合作精神。通过实习这个平台特别让我们工科的学生学会了如何将所学的知识与实践相结合在一起,使得我们在以后的学习、工作中才会学以致用,学懂所用。7. 指导老师及意见参考文献1微机原理及接口技术实验指导书,张国安,福建工程学院校内讲义,20102单片机原理及应用,丁元杰著,北京航空航天大学出版社。3单片机控制技术在通信中的应用-MCS-51系列,潘超群著,电子工业出版社。4单片机使用教程,李勋、刘源著,北京航空航天大学出版社。5综合课程设计汇编,重庆大学出版社8.附录 源程序:S_SET BIT P0.0 ;数字钟秒控制位M_SET BIT P0.1 ;分钟控制位H_SET

12、BIT P0.2 ;小时控制位SECOND EQU 30H ;秒寄存器,地址为30HMINUTE EQU 31H ;分钟寄存器,地址为31H HOUR EQU 32H ;小时寄存器,地址为32HTCNT EQU 34H ORG 00H SJMP START ORG 0BH LJMP INT_T0START: MOV DPTR,#TABLE MOV HOUR,#0 ;初始化 MOV MINUTE,#0 MOV SECOND,#0 MOV TCNT,#0 MOV TMOD,#01H ;置T0为计数器方式1 MOV TH0,#(65536-50000)/256 ;定时50毫秒 MOV TL0,#(6

13、5536-50000)MOD 256 MOV IE,#82H SETB TR0 A1: LCALL DISPLAY JNB S_SET,S1 JNB M_SET,S2 JNB H_SET,S3 LJMP A1S1: LCALL DELAY ;去抖动 JB S_SET,A1 INC SECOND ;秒值加1 MOV A,SECOND CJNE A,#60,J0 ;判断是否加到60秒 MOV SECOND,#0 LJMP J0S2: LCALL DELAY JB M_SET,A1K1: INC MINUTE ;分钟值加1 MOV A,MINUTE CJNE A,#60,J1 ;判断是否加到60分

14、MOV MINUTE,#0 LJMP J1S3: LCALL DELAY JB H_SET,A1K2: INC HOUR ;小时值加1 MOV A,HOUR CJNE A,#24,J2 ;判断是否加到24小时 MOV HOUR,#0 ;若到24,小时清零 LJMP J2 J0: JB S_SET,A1 LCALL DISPLAY SJMP J0J1: JB M_SET,A1 LCALL DISPLAY SJMP J1J2: JB H_SET,A1 LCALL DISPLAY SJMP J2INT_T0: MOV TH0,#(65536-50000)/256 MOV TL0,#(65536-50

15、000)MOD 256 INC TCNT MOV A,TCNT CJNE A,#20,RETURN ;计时1秒 INC SECOND MOV TCNT,#0 MOV A,SECOND CJNE A,#60, RETURN INC MINUTE MOV SECOND,#0 MOV A,MINUTE CJNE A,#60, RETURN INC HOUR MOV MINUTE,#0 MOV A,HOUR CJNE A,#24, RETURN MOV HOUR,#0 DISPLAY: MOV A,SECOND ;显示秒 MOV B,#10 ;把10送给B寄存器 DIV AB ;A/B 商送给B CL

16、R P3.4 ;片选秒的个位 MOVC A, A+DPTR ; 查表 MOV P2, A ;将码形送给P2口 LCALL DELAY ;扫频 STEB P3.4 ;停止对秒钟个位扫频 MOV A,B ;将商中值送给A CLR P3.5 ;选中秒钟十位 MOVC A,A+DPTR ;查表 MOV P2,A ;将码形送给P2口 LCALL DELAY ; 延时 SETB P3.5 ;停止扫秒钟十位 MOV A,MINUTE ;显示分钟 MOV B,#10 DIV AB CLR P3.2 MOVC A,A+DPTR MOV P2,A LCALL DELAY SETB P3.2 MOV A,B CLR

17、 P3.3 MOVC A,A+DPTR MOV P2,A LCALL DELAY SETB P3.3 MOV A,HOUR ;显示小时 MOV B,#10 DIV AB CLR P3.0 MOVC A,A+DPTR MOV P2,A LCALL DELAY SETB P3.0 MOV A,B CLR P3.1 MOVC A,A+DPTR MOV P2,A LCALL DELAY SETB P3.1 RET RETURN :RETITABLE: DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FHDELAY: MOV R6,#10D1: MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 RETEND

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1