《学士学位论文—-基于单片机的门铃设计.doc》由会员分享,可在线阅读,更多相关《学士学位论文—-基于单片机的门铃设计.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 成绩课程论文题 目: 基于单片机的门铃设计 学生姓名: 学生学号: 系 别: 电子工程学院 专 业: 通信工程 年 级: 任课教师: 基于单片机的门铃设计电子工程学院 通信工程专业1绪论1.1课题背景在现代电子产品中,“叮咚”门铃以它成本低,方便快捷等优点占据了很大的市场空间。本课程设计是基于单片机的“叮咚”门铃,通过单片机控制输出频率,由音频功率放大器LM386放大给扬声器,使之发出叮咚声。虽然功能简单,但是由于其操作简单得到了广泛的应用。主要技术指标是当按下开关SP1,AT89C51单片机产生“叮咚”声从P1.0端口输出到LM386,经过放大之后送入喇叭。1.2总体方案设计针对本课题的设
2、计任务,进行分析得到:本次设计是利用单片机实现对扬声器发声的,控制采用按钮操作,AT89C51单片机进行控制,由音频功率放大器进行放大,最后使扬声器发出“叮咚”声音。单片机AT89C51按钮晶振电路音频放大器扬声器图1 “叮咚”门铃总体设计框图该直流电机调速系统的设计在总体上分为以下几个部分:单片机控制部分;音频功率放大器部分;扬声器输出部分。 2系统主要硬件电路设计2.1 单片机主机系统电路 本设计采用AT89C51单片机,AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密
3、度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。I/O存储器EPROM/ROM定时/计数器运算器控制器中断CPU片内振荡器RAM/SFP并行口存储器扩展控制器串行口XTAL AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。图2 AT89C51内部
4、结构原理图 . 图3 AT89C51管脚图AT89C51各引脚功能介绍:VCC:AT89C51 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反相放大器输入端。XTAL2:系统时钟的反相放大器输出端。RESET:AT89C51的重置引脚,高电平动作。EA/Vpp:EA为英文External Access的缩写,表示存取外部程序代码之意,低电平动作,)。ALE/PROG:ALE是英文Address Latch Enable的缩写,表示地址锁存器启用信号。PSEN:此为Program Store Enable的缩写,其意为程序储存启用。PORT0(P0.0P0.7):端口0
5、是一个8位宽的开路汲极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载PORT2(P2.0P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外,若是在AT89C51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8A15,这个时候P2便不能当做I/O来使用了。PORT1(P1.
6、0P1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。PORT3(P3.0P3.7):端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能2.2 音频放大模块本模块主要采用LM386来实现其功能,LM386是一种音频集成功放,具有自身功耗低、更新内链增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点的功率放大器,广泛应用于录音机和收音机之中。为
7、使外围元件最少,电压增益内置为20。但在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至 200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。 图4 音频放大模块2.3 扬声器电路 通过如图5的设计可以实现对扬声器发声的控制,该电路通过电容器,电容,电阻等实现了对扬声发声的控制。 图5 扬声器电路3系统软件设计3.1设计思路 1.我们用单片机实定时/计数器T0来产生700HZ和500HZ的频率,根据定时/计数器T0,我们取定时250us,因此,700HZ的频率要经过3次250us
8、的定时,而500HZ的频率要经过4次250us的定时。信号产生的方法:500Hz信号周期为2ms,信号电平为每1ms(4X250us)变反1次,2.在设计过程,只有当按下SP1之后,才启动T0开始工作,当T0工作完毕,回到最初状态。 3.“叮”和“咚”声音各占用0.5秒,因此定时/计数器T0要完成0.5秒的定时,对于以250us为基准定时2000次才可以。 开始T0初始化T0开中断启动T0工作T0工作完毕否?SP1按下否?YESNOYESNO图6 主程序流程图该流程图是“叮咚”门铃系统设计,通过单片机的初始化判断按钮是否按下,通过单片机系统进行控制,使扬声器发出“叮咚”声音。T0中断程序框图T
9、0中断入口T05S=0,Flag取反T05S加1中断返回P1.0取反T5HZ=0T7HZ=0Flag=0T7HZ加1T5HZ加1Flag=1T05S=2000吗?T7HZ=3吗?T5HZ=4吗?NOYESNOYESYESNO图7 T0中断服务程序框图3.2仿真电路图图8 仿真电路图4程序设计4.1程序源代码设计具体代码实现#include unsigned char t5hz;unsigned char t7hz;unsigned int tcnt;bit stop;bit flag;void main(void)unsigned char i,j;TMOD=0x02;TH0=0x06;TL0
10、=0x06;ET0=1;EA=1;while(1)if(P3_7=0)for(i=10;i0;i-)for(j=248;j0;j-);if(P3_7=0)t5hz=0;t7hz=0;tcnt=0;flag=0;stop=0;TR0=1;while(stop=0);void t0(void) interrupt 1 using 0tcnt+;if(tcnt=2000)tcnt=0;if(flag=0)flag=flag;elsestop=1;TR0=0;if(flag=0)t7hz+;if(t7hz=3)t7hz=0;P1_0=P1_0;elset5hz+;if(t5hz=4)t5hz=0;P1
11、_0=P1_0;4.2调试分析 硬件调试 本课设的硬件调试主要是对Proteus进行调试。在Proteus界面中连好电路图后,运行时可能会出现没有反映,这就需要检查单片机的引脚与音频功率放大器的引脚接的是否正确,即使有一个接的不对也不会出现结果。还有就是元器件的选择也很重要,由于软件中所带的型号比较多,所以要选择适合本次课设所用到的型号,这样才会出现理想的效果。 软件调试 在软件调试中,本课题选用keil软件进行调试。程序的编写很重要,本次课设的系统编程是采用汇编语言完成的。 软硬件联调 在完成程序的编写和硬件的搭接后,需要对程序和硬、软件进行联合调试。调试的过程就是检查程序的运行方式和结果是
12、否与设计要求相一致,如在调试的过程中发现错误,需要检查程序编写的引脚与硬件连接的引脚是否一致,以及检查加载的程序是否相对应。以达到最佳的效果。5系统仿真5.1 PROTEUS简介 Proteus软件是英国Labcenter公司开发的电路分析与仿真软件。它集原理图设计电路分析、仿真和PCB设计于一体,配有各种信号源和电路分析所需的虚拟仪表;具有模拟电路、数字电路、单片机应用系统、嵌入式系统设计与仿真功能。基于Proteus的电子电路设计从根本上克服了传统电子产品设计中没有物理原型就无法对系统进行测试,没有系统硬件就很难对软件进行调试的缺点。 Proteus与其它单片机仿真软件不同的是,它不仅能仿
13、真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。5.2 系统仿真 图9 系统仿真图第6章 总结通过这次的设计,我不仅学到了许多新东西,而且巩固了以前所学的知识以及书上没有学到过的知识。在设计中掌握课程,具有很强的实用性,真正做出一个实际的作品比我们做很多道题更具有生动性。 第一次从白纸一样开始自己设计,起初我还害怕做不出东西来,这次单片机设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与
14、实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。通过这次单片机设计之后,一定把以前所学过的知识重新温故。参考文献1 赵晶.Protel99高级应用M.人民邮电出版社, 2006.2 谷树忠. Protel DXP实用教程M.电子工业出版社,2003.3 刘湘涛、江世民.单片机原理与应用M.电子工业出版社, 2006.4 孙育才. ATMEL新型AT89S51系列单片机及其应用M.清华大学出版社, 2005.5 李华MCU-51系列单片机实用接口技术M北京:北京航空航天大学出版社,19936 张迎新、雷道振.单片机初级教程M.北京航天航空大学出版社, 2006.第 13 页