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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

定时打铃设计报告.docx

1、定时打铃设计报告前 言用单片机控制的自动打铃器,充分发挥单片机体积小,价格便宜,功耗低,可靠性好等特点,可用于学校作息,方便了广大师生。同时也可作为电子手表的设计方案,两者在原理及实现的功能上是一样的效果,也可作为各种时钟控制电路的报警装置使用,具有用途范围广,具有原理简单便于操作和维护的优点。总体上单片机设计方案在现实中应用非常广泛 ,而且在现实生活中也比较容易实现设计的实施。随着科技的发展,以单片机系统为控制中心、采用大规模集成电路生产的定时打铃产品是最新的发展趋势,具有性能稳定,走时更精确,操作简单、人性化,使用方便等特点。它还能播放音乐乐曲,兼作电子时钟显示,其外形美观大方,亮度清晰,

2、赏心悦目,可取代传统时钟、日历牌、挂历等。第一章 设计要求1.1 设计内容(1) 显示时钟格式:*时*分*秒。 (2) 可任意设定时间达到定时控制,定时点至少有2个。(3) 定时时间到,打铃1分钟,然后自动关闭打铃。1.2 设计要求本次设计以8255管理键盘和显示,6位LED数码管从左到右分别显示时. 分. 秒(各占用2位),采用24小时标准计时制。设置了总共10个按键,分别为时“+”键、时“-”键、分“+”键、分“-”键、4个定时点键、校时键、确定键。分, 秒加到59后变为00,减到00后变到59;小时加到23后再按键即变为00,减到00后变为23,在调校时时均不向上一单位进位(例如分加到5

3、9后变为00;但小时不发生改变)。 本设计的振铃部分则采用发光二极管代替。1.3 设计框图(图1.1)第二章 系统组成及工作原理2.1 系统组成通过对系统总体结构的分析,根据打铃器实际要求,采用了模块化设计,此定时打铃器主要由显示模块、校时模块和时钟运算模块三大部分组成。显示模块主要有6只LED数码管组成,校时模块和时钟运算模块要对时、分、秒的数值进行操作,并且秒计算到60时,要自己清零并向分进1;分计算到60时,要自己清零并向时进1;时计算到24时,要清零。时钟运算模块的主要功能是对时、分、秒的运算。通过这些模块从而方便地实现了通过按键来校时、定时以及铃响控制。2.2 系统工作原理定时打铃器

4、主要由8051片内定时器定时中断,并取一存储单元作为计数器使用,每中断一次,在中断服务程序中使计数器加1,主要用8051片内定时器定时中断服务程序完成秒、分、时的运算即计时功能,8255A负责将内存里的时位、分位和秒位数值输出到数码管。单片机不断的把定时单元内容和是时间单元内容进行比较,如果时间到则打铃。此设计可设置有4个定时点,分别有8051的P1.0,P1.1,P1.2,P1.3来输出。第三章 系统硬件设计3.1方案比较对于振铃电路的设计我们拟订了两种设计方案3.1.1 方案一:其振铃电路如下分析:此电路的特点是为一继电器输出接口,信号经光耦合后再经过继电器输出,当P1.0为低电平时经74

5、07驱动后经过耦合使SPEAKER发声。P1.0为低电平时,喇叭响,为高电平时喇叭不响,次方案的缺点是继电器的磁铁震动,造成不稳定。a)图3.1.13.2.2 方案二:其振铃电路如下分析:图中反相器的作用是驱动喇叭的,此方案的优点是:硬件电路简单,稳定,实现起来方便,很适合于实现中。而且硬件调试也简单,这样成功率会高一些。(b)图3.1.2综上所述为了提高设计的可靠性及可行性我们决定采用第二种方案,这一方案非常简便,极易容易实现。 3.2 单片机控制系统 单片微型计算机(Single-Chip Microcomputer),简称单片机。就是将微处理器(CPU)、存储器(存放程序或数据的ROM和

6、RAM)、总线、定时器/计数器、输入/输出接口(I/O口)和其他多种功能器件集成在一块芯片上的微型计算机。 对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。复位电路和晶振电路是 STC89C51工作所需的最简外围电路。基本系统电路原理图3.2:图 3.2单片机控制系统原理图3.3 显示模块设计 显示部分硬件用六只LED为显示管,这些LED发光二极管的阴极是互相连接在一起的,所以称为共阴极数码管。通过在这6只发光二极管的阳极加+5 V或0 V的电压使不同的二极管发光,形成不同的数字。该模块主要是将运算模块和校时模块运算出来并存放在内存单元里的十六进制表示的时位、分位和秒位

7、数值转化为十进制,并通过6只数码管显示出来。采用软件译码,即在程序中设置一个段选码表。CPU直接往LED输出八段代码,省去了硬件译码器。A0A3作为8段数据输出口,经74LS07驱动后到达各LED。只要做到每送一次段选码时也送一次位扫描码,并且每送一次位扫描码后,位码中的0左移一位作为下一次的位扫描码,即可实现由右向左使6只LED依次出现数字显示。显示字符显示码显示字符显示码07EH 87FH130H 97BH26DH H37H379H E4FH433H L0EH55BH O7EH 65FH - 01H770H 表3-1 字形码表3.4 键盘模块设计 键盘显示电路主要用8255来设计而成,板面

8、上有6个LED管,用来显示时间,8255用来控制键盘。该模块的主要功能是输入命令,对我们要的状态进行切换,并把最终结果存到事先已经开辟的内存单元里,键盘分为四行六列,行与8255PC口低四位相连即PB0-PB3,列与8255的PA口相连,形成一个矩阵形式,一个行号和列号确定一个键的位置,便于单片机读取键值。第四章 软件设计4.1 程序设计思想本次设计最主要的思想体现在使用了模块化的编程思想。在确定了方案后,就仔细思考并统筹了整个程序框架,然后将其分为主程序、中断子程序、键盘扫描子程序、显示子程序、打铃子程序等几个部分来分别设计,这样不仅思路清楚,而且便于程序的编写和调试。4.2 主程序设计主程

9、序是整个系统软件的运行主体,各个子系统软件都必须经过它的调度,才能运行得当。根据设计的功能要求,主程序中主要完成内存单元及定时器的初始化,显示和键盘的扫描。部分按键说明:A键设定定时点1MON键确定键B键设定定时点2F1/LS键时加+1键C键设定定时点3STEP键时加-1键D键设定定时点4RG/FS键分加+1键F2/NX 键校时键SCAL键分加-1键表4-14.2.1 主程序流程图根据设计所规定要求,定时打铃器设计的流程图如图4.1所示。 (图4.1) 主程序流程图4.3 子程序设计根据这次模块化的设计思想,总共分成了按键处理子程序、中断服务程序、显示子程序三个部分。4.3.1按键处理子程序按

10、键处理子程序主要包括读键值处理、数字键处理、校时键处理、定时键处理、确认键处理等,其流程图如图4.2所示:4.3.2定时中断服务程序设计 本次中断服务程序设计中用了T0定时中断,其流程图如图4.3所示: 1、定时器初值分析T0定时最长时间约为130ms,可用T0产生100ms的定时,再通过计时10次就可达到1s。设定时初值为X(2 16X)*2s=100ms, 得X3CB0H. 即 TH0=3CH, TL0=B0H 。图4.3 定时中断服务程序流程图4.3.3显示子程序设计这次显示电路DIR处理很简单,主要是通过一个子程序将30H、31H、32H单元中的内容“分割”到显缓区40H到45H中,从

11、而调用DIR显示,其流程图如图4.4所示:图4.4 显示程序流程图第五章 调试与结果分析本次系统调试共分为硬件调试和软件调试两部分, 硬件调试用来测试硬件电路设计是否合理以及电线连接正确性;软件调试则测试软件设计的程序代码是否有语法错误及能否实现所要求的功能。由于实验时硬件用的是实验箱,内部电路已经连接正确,所以硬件几乎不用调试。在软件调试中,也采用了模块化的思想进行调试。软件调试是整个系统调试的核心部分,花的时间最长。首先,对各个模块分别调试。将编写好的源程序输入电脑,编译后出现很多错误,这些错误有许多时平时的实验遇到过的,于是和同组人员一起进行逐条跟踪法,对每条程序检查。其中有输入的符号格

12、式不正确,零和字母O弄混淆了,字母写错等原因。经过一番思考后,采用了单步调试及断点运行等方法后,发现最致命的错误是:程序中出现了死循环。经调整修改程序,这些问题都解决了。第二次上机调试时,可以正确显示时钟和打铃一分钟,但是按键无效,又经过仔细的分析,发现调用按键子程序时出现了错误,最终这个问题解决了。第三次上机调试比较成功,可以满足所有的基本要求。第1、在调试前,编了一个小程序读出最小系统板的键码值,根据键值确定了各个按键的功能。第2、之后,就是对按键子程序调试。在调试的过程中,涉及到的键的去抖及一键多功能的问题,采用了单步调试及断点运行等方法后,很快调试正确了。通过同组人几天的合作以及向一些

13、其他同学的请教最终所有的程序都调试正确了。总结经过两个星期的单片机电子打铃的课题的设计,我从中学到了很多东西。如:如何设计硬件电路,如何编写、调试软件程序等。这使我受益非浅,感受很深。这不仅使我重温了单片机的基本结构及工作原理,接口技术,而且进一步熟悉了如何使用单片机汇编语言编写程序和调用程序的方法与技巧。能够熟练地对小键盘进行操作,对单片机常用的几种芯片也有了更深一步的了解,而且学会了如何利用计算机进行程序汇编和写入程序存储进行调试,使我对整个制作流程有了深刻的了解和体会。特别是认识到使用单片机进行软件、硬件的开发过程中应注意设计要求、经过及解决一些客观存在问题的重要性及其意义。在电子打铃课

14、题的设计制作过程使我们对单片机的设计、开发产生了更加深厚的兴趣,但是也遇到了很多问题和挫折,然而经过自己不断的探索和请教学习后,还是将它们一一解决,并得到了很多很深刻的教训和许多宝贵经验,找出自身整个设计过程中所存在的问题,并认识到自己在以后应该怎样去克服它们。在整个设计过程中我的动手能力与解决问题的能力也进一步提高。虽本次设计中我走了不少的弯路,吃了不少的苦头。但是,我从中得到了更多。使我对单片机的开发产生了浓厚的兴趣,对我的将来充满斗志和信心。我相信,将来的社会,只要能想到的就能做。因为科技无边,智慧无限。我相信我们的能力。参考文献:1 张友德、赵志英、涂时亮.单片微型机原理、应用与实验.

15、上海.复旦大学出版社,2008年5月.2 吴开志、陈黎娟、邓谦、任爱山.单片机技术及应用实验指导书.南昌.南昌航空大出版社,2008年.3 吴清绣.微型计算机原理及接口技术.北京.中国科学技术大学出版社,2004年.4 吴向军.汇编语言程序设计.北京.高等教育出版社,2001年.5 贾金铃.微型计算原理及应用.重庆.重庆大学出版 2006年6 胡汉才.单片机原理及其接口技术.北京.清华大学出版社.2004年.附录一:程序清单及注释:ORG 0000H ;主程序入口地址LJMP MAINORG 000BH ;定时器入口地址LJMP INTMAIN: MOV SP ,#67HMOV TMOD,#0

16、1H ;定时器0选择方式1作为时钟信号MOV IE,#8AH ;中断控制IE设为8AMOV TH0,#3CH ;定时器0初始化,赋给初始值MOV TL0,#0B0HMOV 30H,#23H ;时MOV 31H,#59H ;分MOV 32H,#50H ;秒MOV 33H,#00H ;33H清0MOV 34H,#1AH ;定时1的显缓单元MOV 35H,#00HMOV 36H,#00HMOV 37H,#2AH ;定时2的显缓单元MOV 38H,#00HMOV 39H,#00HMOV 3AH,#3AH ;定时3的显缓单元MOV 3BH,#00HMOV 3CH,#00HMOV 3DH,#4AH ;定时

17、4的显缓单元MOV 3EH,#00HMOV 3FH,#00HMOV 40H,#0BAH ;时显缓单元MOV 41H,#00HMOV 42H,#00HMOV 43H,#00HMOV 79H,#00HMOV 7AH,#00HMOV 7BH,#00HMOV 44H, #00HMOV R0 ,#79H ;将显缓单元79H 给R0MOV R3,#06H ;存储循环次数XQ: MOV R0,#00HINC R0DJNZ R3,XQ ;循环六次MOV R3,#06HMOV R0 ,#79HCLR 08HCLR 09HCLR 00HCLR 0AHCLR 0BH ;关闭定时器标志CLR 0CHCLR 0DHCL

18、R 0EHCLR 0FH ;调时屏蔽号键SETB TR0 ;启动定时器0MAN : LCALL BJMOV A, 44H ;A=00HCPL A ;A=FFH LCALL KEYS ;调用键盘扫描子程序 MOV A,B CJNE A,#0FFH,D1 ;A不等于FFH则转移JB 09H,D8 ;09H等于01H则转移LCALL TMJMP MAND1: SETB 09H ;09H置1DEC AMOV R7 ,ARL AADD A,R7 ;A=3A2MOV DPTR ,#PMTABJMP A+DPTRD8: LCALL DISP ;调用数码管显示子程序LJMP MANPMTAB: LJMP PM

19、0LJMP PM1LJMP PM2LJMP PM3LJMP PM4LJMP PM5LJMP PM6LJMP PM7LJMP PM8LJMP PM9LJMP PM10PM0: CLR 0FHSETB 0AH ;0AH单元置1MOV 43H,#01HMOV R1,#36HLCALL TM0 LJMP D8PM1:CLR 0FHSETB 0AH ;0AH单元置1MOV 43H,#02HMOV R1,#39HLCALL TM0LJMP D8PM2:CLR 0FHSETB 0AHMOV 43H,#03HMOV R1,#3CHLCALL TM0LJMP D8PM3: CLR 0FHSETB 0AHMOV

20、43H,#04HMOV R1,#3FHLCALL TM0LJMP D8PM4: SETB 0FHSETB 0AHMOV 43H,#05HMOV 42H,31HMOV 41H,30HMOV R1,#42HLCALL TM0LJMP D8PM5: SETB TR0CLR 0AHCLR 09HLJMP MANPM6: JB 0AH,GGGCLR 09HLJMP D8GGG: MOV A,43HDEC AMOV R7 ,ARL AADD A,R7MOV DPTR ,#PMTAB2JMP A+DPTRPMTAB2: LJMP PC0LJMP PC1LJMP PC2LJMP PC3LJMP PC4PC0

21、: MOV A ,35H ;定时0,设定24小时制时的显示 CJNE A,#23H,TY3TY3: JC TYCLR AJMP TY1TY: ADD A ,#01HDA ATY1: MOV 35H,AMOV R1,#36HLCALL TM0LJMP D8PC1: MOV A , 38H ;定时1,设定24小时制时的显示CJNE A,#23H,TP3TP3: JC TPCLR AJMP TP1TP: ADD A ,#01HDA ATP1: MOV 38H,AMOV R1,#39HLCALL TM0LJMP D8PC2: MOV A , 3BH ;定时2,设定24小时制时的显示CJNE A,#23

22、H,TB3TB3: JC TBCLR ALJMP TB1TB: ADD A ,#01HDA AB1: MOV 3BH,AMOV R1,#3CHLCALL TM0LJMP D8PC3: MOV A , 3EH ;定时3,设定24小时制时的显示CJNE A,#23H,TW3TW3: JC TWCLR AJMP TW1TW: ADD A ,#01HDA ATW1: MOV 3EH,AMOV R1,#3FHLCALL TM0LJMP D8PC4: MOV A , 41H ;定时4,设定24小时制时的显示CJNE A,#23H,TE3TE3: JC TECLR AJMP TE1TE: ADD A ,#0

23、1HDA ATE1: MOV 41H,AMOV R1,#42HCLR TR0MOV 31H ,42HMOV 30H,41HMOV 32H,#00HMOV 33H ,#00HLCALL TM0LJMP D8PM7: JB 0AH,GGG1CLR 09HLJMP D8GGG1: MOV A,43HDEC AMOV R7 ,ARL AADD A,R7MOV DPTR ,#PMTAB1JMP A+DPTRPMTAB1: LJMP PN0LJMP PN1LJMP PN2LJMP PN3LJMP PN4PN0 :MOV A , 35HCJNE A,#00H,TUMOV A,#23HJMP TU1TU: M

24、OV 79H,ADEC AADD A ,#00HDA ACJNE A,79H,TU3TU3: JC TU1SUBB A,#0CHTU1: MOV 35H,AMOV R1,#36HLCALL TM0LJMP D8PN1: MOV A , 38HCJNE A,#00H,TGMOV A,#23HJMP TG1TG: MOV 79H,ADEC AADD A ,#00HDA ACJNE A,79H,TG3TG3: JC TG1SUBB A,#0CHTG1: MOV 38H,AMOV R1,#39HLCALL TM0LJMP D8PN2: MOV A , 3BHCJNE A,#00H,EKMOV A,#2

25、3HJMP EK1EK: MOV 79H,ADEC AADD A ,#00HDA ACJNE A,79H,EK3EK3: JC EK1SUBB A,#0CHK1: MOV 3BH,AMOV R1,#3CHLCALL TM0LJMP D8PN3: MOV A , 3EHCJNE A,#00H,EBMOV A,#23HJMP EB1EB: MOV 79H,ADEC AADD A ,#00HDA ACJNE A,79H,EB3EB3: JC EB1SUBB A,#0CHEB1: MOV 3EH,AMOV R1,#3FHLCALL TM0LJMP D8PN4: MOV A , 41HCJNE A,#0

26、0H,EYMOV A,#23HJMP EY1EY: MOV 79H,ADEC AADD A ,#00HDA ACJNE A,79H,EY3EY3: JC EY1SUBB A,#0CHEY1: MOV 41H,AMOV R1,#42HCLR TR0MOV 31H ,42HMOV 30H,41HMOV 32H,#00HMOV 33H ,#00HLCALL TM0LJMP D8PM8 : JB 0AH,GGG2CLR 09HLJMP D8GGG2: MOV A,43HDEC AMOV R7 ,ARL AADD A,R7MOV DPTR ,#PMTAB3JMP A+DPTRPMTAB3: LJMP P

27、D0LJMP PD1LJMP PD2LJMP PD3LJMP PD4PD0 : MOV A ,36HCJNE A,#59H,TTT3 ; 定时0,设定24小时制分的显示TTT3: JC TTTCLR AJMP TTT1TTT: ADD A ,#01HDA ATTT1: MOV 36H,AMOV R1,#36HLCALL TM0LJMP D8PD1: MOV A , 39H ; 定时1,设定24小时制分的显示CJNE A,#59H,AF3AF3: JC AFCLR AJMP AF1AF: ADD A ,#01HDA AAF1: MOV 39H,AMOV R1,# 39HLCALL TM0LJMP

28、 D8PD2: MOV A ,3CH ; 定时2,设定24小时制分的显示CJNE A,#59H,YY3YY3: JC YYCLR AJMP YY1YY: ADD A ,#01HDA AYY1: MOV 3CH,AMOV R1,# 3CHLCALL TM0LJMP D8PD3: MOV A ,3FH ; 定时3,设定24小时制分的显示CJNE A,#59H,AS3AS3: JC ASCLR AJMP AS1AS: ADD A ,#01HDA AAS1: MOV 3FH,AMOV R1,# 3FHLCALL TM0LJMP D8PD4: MOV A , 42H ; 定时4,设定24小时制分的显示C

29、JNE A,#59H,HZ3HZ3: JC HZCLR AJMP HZ1HZ: ADD A ,#01HDA AHZ1: MOV 42H,AMOV R1,# 42HCLR TR0MOV 31H ,42HMOV 30H,41HMOV 32H,#00HMOV 33H ,#00HLCALL TM0LJMP D8PM9: JB 0AH,GGG3CLR 09HLJMP D8GGG3: MOV A,43HDEC AMOV R7 ,ARL AADD A,R7MOV DPTR ,#PMTAB5JMP A+DPTRPMTAB5: LJMP PQ0LJMP PQ1LJMP PQ2LJMP PQ3LJMP PQ4PQ0:

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

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