单片机课程设计-简易安防声光报警器设计.doc_第1页
单片机课程设计-简易安防声光报警器设计.doc_第2页
单片机课程设计-简易安防声光报警器设计.doc_第3页
单片机课程设计-简易安防声光报警器设计.doc_第4页
单片机课程设计-简易安防声光报警器设计.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

前 言从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。近年来,随着我国经济的迅速发展,城乡居民的生活水平有了显著提高,尤其是城镇居民的居住条件不断改善,人们在解决了居住问题后,日益关心的是居住是否安全。在购房时,安全性是考察物业管理水平是否完善的一个重要条件。尤其是那些流窜作案的犯罪分子,往往选择居民小区作为攻击目标,入室盗窃抢劫案件屡屡发生,以往的依赖小区保安人防为主的防范措施已满足不了人们的要求。利用安全防范技术进行防范首先对犯罪分子有种威慑作用,使其不敢轻易作案。如我们这次设计的简易安防声光报警器,可以安装在门口或玄关处,当有不法分子闯入时,利用门禁报警和红外报警双重保险,一方面可以提醒主人危险发生,另一方面也可以震慑不法分子。全套设计加扣3012250582 目 录第一章 设计目的及要求- 3 -1.1、设计目的- 3 -1.2、设计要求- 3 -1.2.1、课程设计要求- 3 -1.2.2、基本设计功能要求主要分为以下几个部分:- 3 -第2章 方案设计- 4 -2.1、研究背景- 4 -2.2、本文研究的主要内容- 4 -2.3、方案论证- 4 -第3章 主要元器件介绍- 5 -3.1 AT89C51单片机介绍- 5 -3.1.1 AT89C51芯片简介- 5 -3.1.2 引脚说明- 5 -3.2、四位一体七段共阴极显示数码管- 7 -第4章 硬件电路设计- 8 -4.1、晶振时钟电路设计- 8 -4.2、复位电路设计- 8 -4.3、报警电路设计- 9 -4.4、驱动和显示电路设计- 9 -4.5、提示电路设计- 10 -第5章 软件设计及主要子程序- 11 -5.1、软件设计思路- 11 -5.2、主程序模块- 11 -5.3、子程序模块- 12 -5.3.1 延时程序- 13 -5.3.2 报警程序- 13 -5.3.3 外部中断程序- 13 -第6章 系统仿真与调试- 15 -6.1、Keil编译- 15 -6.2、Protues仿真平台- 15 -6.2.1、Protues仿真简介及部分模块仿真- 15 -6.2.2、硬件电路总图与仿真- 16 -第7章 操作方法- 17 -第8章 课程设计总结- 18 -参考文献- 19 -附 录- 20 -1、系统原理图- 20 -2、PCB板- 21 -3、总程序- 22 - 25 -第一章 设计目的及要求1.1、设计目的本次课程设计目的在于真正的把所学单片机理论知识应用于实际,更加熟悉51单片机的硬件与软件。能灵活运用Keil进行软件编程调试以及用proteus软件仿真。利用安全防范技术进行防范首先对犯罪分子有种威慑作用,使其不敢轻易作案。如我们这次设计的简易安防声光报警器,可以安装在门口或玄关处,当有不法分子闯入时,利用门禁报警和红外报警双重保险,一方面可以提醒主人危险发生,另一方面也可以震慑不法分子。1.2、设计要求1.2.1、课程设计要求能熟练运用51单片机实现硬件与软件结合完成电子产品的设计,把理论真正运用于实践,会用Keil等软件编程调试运行,熟悉应用Proteus软件仿真。强化编程练习,注意查询方式与中断方式的区别等等。1.2.2、基本设计功能要求主要分为以下几个部分:(1)警情探测在该设计中,需采用两路外部中断输入门禁报警和红外报警,分别采用两个小按键模拟。其中一个按键模拟门禁报警,对应外部中断1;另一个按键模拟红外报警,对应外部中断2。 (2)报警设计正常状态下,数码管显示0,当发生门禁报警时,系统发出声光报警信息并在数码管显示1;当发生红外报警时系统发出声光报警信息并在数码管显示2。只有由主人按下报警接触按钮或系统复位后,才能解除声光报警并将数码管的数字重置为0。第2章 方案设计2.1、研究背景随着我国经济的迅速发展,城乡居民的生活水平有了显著提高,尤其是城镇居民的居住条件不断改善,人们在解决了居住问题后,日益关心的是居住是否安全。在购房时,安全性是考察物业管理水平是否完善的一个重要条件。尤其是那些流窜作案的犯罪分子,往往选择居民小区作为攻击目标,入室盗窃抢劫案件屡屡发生,以往的依赖小区保安人防为主的防范措施已满足不了人们的要求。利用安全防范技术进行防范首先对犯罪分子有种威慑作用,使其不敢轻易作案。如我们这次设计的简易安防声光报警器,可以安装在门口或玄关处,当有不法分子闯入时,利用门禁报警和红外报警双重保险,一方面可以提醒主人危险发生,另一方面也可以震慑不法分子。2.2、本文研究的主要内容设计内容完全按照前面的设计要求完成,完全满足前面的设计要求。2.3、方案论证方案:设计选用单片机AT89C51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的安防报警功能。方案完全按照第1章的基本设计要求设计。触发按钮报警电路显示模块AT89C51时钟电路复位电路 图2-1 单片机控制方案第3章 主要元器件介绍3.1 AT89C51单片机介绍3.1.1 AT89C51芯片简介AT89C51是MCS51系列单片机中的一种低功耗、高性能的片内含有4KB快闪可编程/擦除只读存储器的8位CMOS微控制器,使用高密度、非易失存储技术制造,并且与80C51引脚和指令系统完全兼容。 主要性能:与MCS-51 微控制器产品系列兼容。 片内有4KB可在线重复编程的快闪擦写存储器存储数据保存时间为10年。宽工作电压范围:Vcc可为2.7V到6V全静态工作;可从0Hz至16MHz 程序存储器具有3级加密保护 128*8位内部RAM 32条可编程I/O线、两个16位定时器/计数器、中断结构具有5个中断源和2个优先级、可编程全双工串行通道、空闲状态维持低功耗和掉电状态保存存储内容。89C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统各部分功能及说明类似于8051单片机内部结构说明。 特殊功能寄存器共有21个,用于对片内的各功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。 由上可见, 89C51单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位处理器,它实际上是一个完整的1位微计算机,这个1位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-51单片机设计的精美之处。3.1.2 引脚说明 图3-1是标准的40引脚双列直插式集成电路芯片。图3-1 AT89C51引脚图P00P07 P0口8位双向口线(在引脚的3932号端子)。P10P17 P1口8位双向口线(在引脚的18号端子)。P20P27 P2口8位双向口线(在引脚的2128号端子)。P30P37 P3口8位双向口线(在引脚的1017号端子)。1、P0口有三个功能: (1)外部扩展存储器时,用作数据总线(如图中的D0D7为数据总线接口)(2)外部扩展存储器时,用作地址总线(如图中的A0A7为地址总线接口)(3)不扩展时,可做一般的I/O口使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。2、P1口功能:P1口只做I/O口使用,其内部有上拉电阻。3、P2口有两个功能:(1)扩展外部存储器时,当作地址总线使用;(2)做一般I/O口使用,其内部有上拉电阻。4、P3口有两个功能:除了作为I/O口使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。5、ALE/PROG 地址锁存控制信号:在系统扩展时,ALE用于控制把P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。PROG为编程脉冲的输入端,在89C51单片机内部有一个4KB的程序存储器(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。6、PSEN 外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效,以实现外部ROM单元的读操作:(1)内部ROM读取时,PSEN不动作;(2)外部ROM读取时,在每个机器周期会动作两次;(3)外部RAM读取时,两个PSEN脉冲被跳过不会输出;(4)外接ROM时,与ROM的EA脚相接。7、EA/VPP 访问程序存储器控制信号:(1)接高电平时:CPU读取内部程序存储器(ROM)(2)接低电平时:CPU读取外部程序存储器(ROM)。8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚是一直接低电平的。8、RST 复位信号:当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。9、XTAL1和XTAL2 :外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。10、VCC:电源端接+5V电压输入。11、GND:接地端。3.2、四位一体七段共阴极显示数码管图3-2 四位一体七段共阴极显示数码管将所有数码管通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示。将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。第4章 硬件电路设计本设计的硬件电路主要包括的模块有:单片机最小系统、七段数码管显示模块、安防报警器(点触开关模拟)、声光报警(声音由二极管模拟),下面将一一介绍。4.1、晶振时钟电路设计时钟电路是单片机的心脏,它用于产生单片机工作所需要的时钟信号。单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。单片机的时钟产生方法有内部时钟方式和外部时钟方式,大多数单片机应用系统采用内部时钟方式,本系统采用的亦是内部时钟方式。在MCS-51芯片内部有一个高增益反相放大器,XTAL1、XTAL2引脚分别为该反相放大器的输入端和输出端,在芯片的外部通过这两个引脚跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此电路采用11.0592MHz的石英晶体。时钟电路如图4-1:图4-1 时钟电路4.2、复位电路设计复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H 单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。MCS-51单片机的复位电路由片内、片外两部分组成,进行复位操作时,外部电路需在复位引脚RST端产生大于两个机器周期的高电平信号,RST引脚通过片内施密特触发器与复位电路相连(施密特触发器的作用是脉冲整型和抑制噪声)。MCS-51单片机的复位操作有两种方式:上电复位和上电按钮复位,本电路采用的是上电按钮复位,复位电路如图4-2:图4-2 复位电路4.3、报警电路设计本设计的红外报警和门禁报警采用的是按键报警,当按下按钮时,即输入报警信息,如图4-3:图4-3 触发报警电路4.4、驱动和显示电路设计动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。图4-4 显示电路4.5、提示电路设计红灯亮表示一切正常。当发生红外报警或门禁报警时,红灯灭,绿灯亮,扬声器发出声音报警。电路图如图九所示:图4-5 声光报警输出电路第5章 软件设计及主要子程序5.1、软件设计思路首先单片机上电复位,并进行初始化包括寄存器和数码管,当发生报警事件时,单片机驱动声光报警装置并且在数码管上显示相应的报警信息,退出中断时,单片机检测报警解除按钮,当报警解除按钮被按下时单片机关闭声光报警并清除数码管上的报警信息。5.2、主程序模块主程序主要完成初始化、设置中断向量、检查有无按键以及调用显示等,正常状态下,数码管显示0,当发生门禁报警时,系统发出声光报警信息并在数码管显示1;当发生红外报警时系统发出声光报警信息并在数码管显示2。只有由主人按下报警接触按钮或系统复位后,才能解除声光报警并将数码管的数字重置为0。主程序流程图如下:是上电复位EA=0数码管初始化INT0、INT1均为下降沿触发EA=1检测P3.4P3.4是否为0解除警报终止否 图5-1 主程序流程图void main() /*主程序*/P0=0x00; /*P0口先全部置0*/delay(100);while(1) /*等待中断*/P0=0x3f; /*P0口置03FH*/red=1; /*P1.0口置1*/green=0; /*P1.1口置0,绿灯亮,蜂鸣器响*/spe=1; /*P1.2口置1,红灯灭*/IE=0x8f; /*IE置10001111,中断总允许,允许外部中断0、1,允许定时/计数器0、1*/IP=0x05; /*IP置00000101,将外部中断0和外部中断1优先*/5.3、子程序模块显示报警信息声光报警器退出中断中断入口 图5-2 中断流程图5.3.1 延时程序void delay(uint ms) /*延时程序*/uchar i;while(ms-) for(i=0;i120;i+);5.3.2 报警程序void baojin() /*报警子程序*/while(1) /*等待中断*/green=1; /*P1.1置1 */red=0; /* P1.0置0*/spe=spe; /*P1.2 取反*/delay(100); /*延时*/red=1; /* P1.0置1*/delay(100); /* 延时*/if(!bjjc) /* 如果警报解除*/break; /*返回*/5.3.3 外部中断程序void external_int0() interrupt 0 /*外部中断0服务程序*/delay(10);while(!mjbj&hwbj) /*如果是红外报警不是门禁报警*/P0=0x06; /*p0口赋值00000110*/baojin(); /*启动报警子程序*/void external_int1() interrupt 2 /*外部中断1服务程序*/delay(10);while(mjbj&!hwbj) /*如果是门禁报警不是红外报警*/P0=0x5b; /*p0口赋值01011100*/baojin(); /*启动报警子程序*/第6章 系统仿真与调试6.1、Keil编译Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势, Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。如果使用C语言编程,那么Keil几乎就是不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。本次设计采用汇编语言编程,生成.hex文件以供装载到Protues中的单片机进行仿真。6.2、Protues仿真平台6.2.1、Protues仿真简介及部分模块仿真Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。迄今为止是世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等。在编译方面,它也支持IAR、Keil和MATLAB等多种编译。目标代码的加载方法为,在Protues编辑环境双击AT89C51,弹出下图所示的对话框,在PROGRAM FILM一栏中单击打开按钮,选中Keil中生成的lzy.hex文件,在CLOCK FREQUENCY栏中设置系统工作频率为12MHZ,单击OK完成目标代码的加载。 图6-1 程序代码加载6.2.2、硬件电路总图与仿真点击运行按钮启动系统仿真,硬件总图如下:图6-2 总图第7章 操作方法首先单片机上电复位,并进行初始化包括寄存器和数码管,当发生报警事件时,单片机驱动声光报警装置并且在数码管上显示相应的报警信息,退出中断时,单片机检测报警解除按钮,当报警解除按钮被按下时单片机关闭声光报警并清除数码管上的报警信息。正常状态下,数码管显示0,当发生门禁报警时,即按下按钮2时,系统发出声光报警信息并在数码管显示1;当发生红外报警时,即按下按钮3时,系统发出声光报警信息并在数码管显示2。只有由主人按下报警解除按钮(按钮1)或系统复位(按钮4)后,才能解除声光报警并将数码管的数字重置为0。第8章 课程设计总结单片机是自动化专业非常重要的专业课,学习的时候还算用心。但是当真正要做一样东西时,才发现自己学的很糊涂。拿到题目后发现很多东西都不记得了,只能翻书温习。我是先做的Proteus仿真,从最小系统开始做。单片机最小系统是指用最少的元件组成的单片机可以工作的系统。应该包括:单片机、晶振电路、复位电路等。由于之前没有这类概念,因此查了很多资料才开始有所理解,并开始动手焊接板子。而在参数的选择方面,有很多参数都是经典的参数,但我也要求自己认真去分析了一下为什么要这么选择。有些是因为单片机内部要求,有些是用于上拉电阻,还有些则要通过模电中的相关知识进行计算。这样一点一点对照着书本做出来的。对于Proteus这个软件,因为是第一次接触,开始时根本不会找适用的器件,后来是通过上网查资料和询问同学才逐渐了解如何使用,最后通过不断的使用到现在已经是使用地非常熟练。每一次的课程设计都会碰到或者或那的问题,也会从课程设计中学到不少的东西。这次的课程设计也不例外,这其中遇到的困难很多,但我也学到了很多,一分耕耘一分收获!今后,我更加努力的学习,学好自己的专业知识以充实自己,多锻炼动手能力,来适应日新月异的现代社会。参 考 文 献1 郭文川.MCS-51单片机原理、接口技术及应用.电子工业出版社,2013.12 王兆安.电力电子技术(第五版).机械工业出版社,2009.53 冯博琴.微型计算机原理与接口技术(第三版)。清华大学出版社,2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论