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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

自动打铃装置.docx

1、自动打铃装置目 录第1章 设计方案论证 11.1设计的应用意义 11.2设计方案选择 11.3 总体设计框图 2第2章 硬件电路设计 22.1单元电路设计与原理分析 22.2显示电路设计 32.3键盘接口设计 32.4打铃电路的设计 4第3章 程序设计 53.1 程序流程图 53.2源程序清单 8第4章 设计总结 13参考文献 13第1章 设计方案论证 1.1设计的应用意义“单片机与接口技术”课程设计是在教学及实验基础上,对课程所学理论知识的深化和提高。因此,要求学生能综合应用所学知识,设计与制造出具有较复杂功能的小型单片机系统,并在实践的基本技能方面进行一次系统的训练。 能够较全面地巩固和应

2、用“单片机”课程中所学的基本理论和基本方法,并初步掌握小型单片机系统设计的基本方法。 培养独立思考、独立收集资料、独立设计规定功能的单片机系统的能力;培养分析、总结及撰写技术报告的能力。1.2设计方案选择设计课题简要概述自动打铃装置用于工厂,学校等地的时间控制,本设计是按照学校作息时间设定的,模拟了电子钟显示时,分,秒。还根据学校的作息时间按时打铃,本系统有两个按钮,分别用来调时,周分,以保证时钟与标准时间相吻合。首先设计出本系统的硬件基本框图,根据框图设计电气原理图,简要概述基本原理,按照设计技术参数设计出各部分程序。系统软硬件划分由于要依据最小系统设计,因此,极大地节约系统的硬件成本,所有

3、能用软件实现的功能都用软件完成,如按键的去抖,采用延时,显示部分用动态显示等,这样硬件部分的设计可以采用单片机最小系统,所谓最小系统是仅有程序存储器和时钟及复位电路的为时过早片机系统。单片机选型根据课题的具体内容,任务要求,计时,校时,定时,键盘显示等功能,经多方考虑,所以本系统选项用与MCS51系统单片机完全兼容的AT89C51低功耗单片机。1.3 总体设计框图 整体框图第2章 硬件电路设计2.1单元电路设计与原理分析基本原理概述 本系统主要由主控模块,时钟模块,显示模块,键盘接口模块等4部分组成。通过内部定时产生中断,从而驱动电铃打铃。设定51单片机工作在定时器工作方式1,每100ms产生

4、一次中断,利用软件将基准100ms单元进行累加,当定时器产生10次中断就产生1S信号,这时秒单元加1。同理,对分单元和时单元计数,从而产生秒,分,时的值,通过六位七段显示器进行显示。由于动态显示法需要数据锁存等硬件,接口较复杂,考虑显示只有六位,且系统没有其他复杂的处理任务,所以采用动态扫描实现LED的显示。本系统采用三个按键,1键为功能键,另外两个做控制键。按一下1键进入时间设置,然后按2键进行时调整,按3键进行分调整,按两下1键进入打铃时间设定,在分别用2键3键进行调整,调整完后按下1键便退出调整,时钟继续走动。当时钟时间与设置时间一致时,驱动电路动作进行打铃,每次打铃10秒。2.2显示电

5、路设计显示部分采用普通的共阳数码管显示,采用动态扫描,以减少硬件电路,数码管分别为十时,时,十分,分,十秒,秒显示,显示时采用串行口输出段码,用74LS373来驱动数码管扫描只需7ms。74LS373内部为8个D触发器,用以实现数据的串行移位,74LS373为TTL单向8位移位寄存器,可实现串行输入并行输出,CPU为时钟输入端,可连接到串行口TXD端。每个时钟信号的上升沿加到CP端时,移位寄存器移一位,8个时钟脉冲过后8位二进制数全部移入74LS373中,MR脚为复位端,当该位为低电平时,移位寄存器各位复0。当它为高电平时时钟脉冲才起作用。Q1Q8并行输出分别接数码管的各段对应脚上,在给出8个

6、脉冲后,最先进入74LS373的第一个字节数据到达最高位,再来1个脉冲,第一个脉冲就会从最高位移出,进入下一个74LS373的第一位。2.3键盘接口设计由于按键盘只有3个,采用独立式按钮,分别与89C51的P1.0、P1.1、P1.2相连,用普通按钮1K上拉电阻,用查询法完成读键功能。2.4打铃电路的设计 本次设计打铃电路如图3.5所示,单片机通过P3.7控制蜂鸣器是否发出声响。当时间与预定打铃时间相同时,单片机通过P3.7输出为1KHz的方波,使得蜂鸣器发出声响。图中NPN三极管作用是电流放大,以保证蜂鸣器能正常发出声音。第3章 程序设计3.1 程序流程图 主程序流程图 定时中断程序流程图

7、显示程序流程图3.2源程序清单K-KEY EQU P1.0 ;控制按键M-KEY EQU P1.1 ;分按键H-KEY EQU P1.2 ;时按键S-DATA DATA 50H ;秒单元数据存储地址M-DATA DATD 51H ;分单元数据存储地址H-DATA DATA 52H ;时单元数据存储地址MOV SP,#70H ;堆栈区地址从70H开始MOV DPTR,#0FB00HMOV A,#03H ;设8155的PA,PB口为输出方式MOVX DPTR,ASTART:LCALL KEY ;调用键盘设置子程序LCALL DIS ;调用显示子程序LCALL CONTROL ;调用控制子程序AJM

8、P START ;循环调用KEY:JB M-KEY,H-SET ;分设置键压下吗?如果没压下,则判断时设置键LCALL DELL ;调用键盘防抖动子程序JB M-KEY,H-SETINC M-DATA ;如果分设置健压下,则分单元加1MOV A,M-DATACJNZ A,#60,M-DIS ;分单元=60,则清0MOV M-DATA,#00HM-DIS:MOV A,M-DATALCALL HEX-BCD ;调用HEX至BCD码转换子程序MOV 69H,AMOV 6AH,B M-REP:LCALL DIS ;调用显示子程序JNB M-KEY,M-REP ;等待分设置键释放H-SET:JB H-K

9、EY,HEX-BCD ;判断时设置键是否压下? LCALL DELL ;调用键盘防抖动子程序 JB H-KEY,HEX-BCD INC H-DATA ;如时设置键压下,则时单元加1 MOV A,H-DATA CJNZ A,#24,H-DIS ;时单元=24,则清0 MOV H-DATA,#10HH-DIS:MOV A,H-DATALACLL HEX-BCD ;调用HEX至BCD码转换子程序MOV 79H,AMOV 7AH,BH-REP:LCALL DIS ;调用显示子程序 JNB H-KEY,H-REP ;等待时设置键释放HEX-BCD:MOV B,#10 DIV AB RETDELL:MOV

10、 R6,#20H ;延迟10ms子程序DEL1:MOV R7,#0FFH DJNZ R7,DJNZ R6,DEL1 RET CLOCK:PUSH ACC ;参数入栈保护 PUSH PSW CLR TR0 MOV TL0,#0B0H ;定时参数重新设置 MOV TH0,#03CH SETB TR0 INC 4FH ;100ms单元内容加1 MOV A,4FH CJNZ A,#10,D0 ;100ms单元内容=10,则秒单元加1 MOV 4FH,#00H ;100ms单元清0 MOV A,S-DATA ADD A,#01H ;秒单元加1 MOV S-DATA,A CJNE A,#60,D0 ;秒单

11、元内容=60,则清0 MOV S-DATA,#00H MOV A,M-DATA ADD A,#01H ;分单元加1 MOV M-DATA,A CJNE A,#60,D0 ;分单元=60,则清0 MOV M-DATA,#00H MOV A,H-DATA ADD A,#01H ;时单元加1 MOV H-DATA,A CJNE A,#24,D0 ;时单元=24,则清0 MOV H-DATA,#00H D0:POP PSW ;出栈,出中断程序 POP ACC RETIDIS:MOV R0,#4FH ;准备向缓冲区放数 MOV A,27H ACALL PTDS ;放秒值 MOV A,28H ACALL

12、PTDS ;放分值 MOV A,29H ACALL PTDS ;放时值 MOV R0,#4AH ;指向缓冲区首地址 MOV R2,#0FFH ;左边第一位开始显示 MOV DPTR,#SEGPT ;指向字形码表首DIS1:MOV A,#00H MOV 20H,DPL MOV 21H,DPH ;熄灭码 MOV DPTR,#4001H ;取显示缓冲区中的数 MOV A,#0FFH MOVX DPTR,A MOV DPL,20H MOV DPH,21H MOV A,R0 MOVC A,A+DPTR ;查表,找字形码 CPL A MOV DPTR,#4002H MOVX DPTR,A ;送出字形码 M

13、OV A,R2 ;取字位码 MOV DPTR,#4001H ;字位口地址 MOVX DPTR,A MOV DPL,20H MOV DPH,21H ;显示一位数 MOV R3,#00HDIS2:DJNZ R3,DIS2 ;延时一段时间 INC R0 ;修改显示缓冲区指针 CLR ;为移位作准备 MOV A,R2 ;取字位码 RL A ;右移一位,为显示下一位作准备 MOV R2,A ;存位码 JB ACC.7,DIS1 ;不到最后一位,则继续 RETPTOS:MOV R1,A ;暂存 ACALL DIS1 ;低4位先放入缓冲区 MOV A,R1 ;取了原数 SWAP A ;高4位放入低4位中RT

14、DS1:ANL A,#0FH ;放进显示缓冲区 MOV R0,A DEL R0 ;缓冲区地址指针减1RETSEGPT: DB 3FH , 06H, 5BH, 4FH, 66H, DB6DH, 7DH, 07H, 7FH, 6FH;时间表DL: MOV DPTR, #P0MOVX A, DPTRINC AMOVC A, A+PC TAB: DB 320H, 352H, 384H, 3B6H, DB 3F2H, 44CH, 47EH, 4B0H, DB 532H, 58CH, 596H, 5F0H, DB 604H, 65EH, 668H, 6C2H, DB 76CH, 79EH, 7B0H, 8

15、02H, 第4章 设计总结本系统被子广泛用企事业单位,设计比较简单。经过一学期的学习,使我对单片机有了初步的认识,了解了一些软件编程的技巧。通过本次课课设,使我学会了课堂上学不到的知识。对单片机又有了更深的认识,掌握单片机设计步骤,知道这门课程在工作中的重要性。在课程设计过程中也遇到了许多困难,但在老师和同学们的同共努力下都得到解决,最终看到了成果.我感谢老师这一年来对我们细心的教导,使我熟悉了一些软件方面的知识,相信定会为日后工作打下坚实基础.。课程设计加深了学生对所学课程理论的理解,扩展了教学中的实验内容和要求,积累了实践体验和经验,让我们提前感受到毕业设计的大致过程,进而能顺利进入毕业设计,提高毕业设计质量和学生实际应用能力。参考文献1 单片机原理及接口技术 梅丽凤等编著2单片机课程设计实例 李光飞等编著3单片机设计与应用基础教程 陆子明

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

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