单片机课程设计报告简易安防声光报警器.doc
《单片机课程设计报告简易安防声光报警器.doc》由会员分享,可在线阅读,更多相关《单片机课程设计报告简易安防声光报警器.doc(16页珍藏版)》请在三一办公上搜索。
1、单 片 机 课 程 设 计报 告 设计题目: 简易安防声光报警器 姓 名: 班 级: 12建筑电气与智能化二班 学 号:_ _ 指导老师: 日 期:_ 2014年10月8号_目 录第一章:前言(3)第二章:设计要求(3) 第三章:课题分析与整体构思(3) 第四章:程序设计(4) 第五章:硬件电路设计(9) 第六章:Proteus仿真 (13)第七章:硬件制作及调试 (13)第八章:心得体会 (15)第一章 前 言 上学期我们学习了单片机这门学科,总体感觉这门学科还是比较难学的,对于编程这类的科目我一直理解的不够透彻。这次的单片机课程设计正好可以让我温习一下之前学过的内容,加深理解,毕竟“实践是
2、检验真理的唯一标准”。通过这次设计,我可以将之前学过的理论和这次实践相结合,更有利于对单片机的理解与把握。第二章 设计要求一、设计题目:简易安防声光报警器二、设计任务及要求: 自制一个单片机最小系统,包括串口下载、复位电路,采用两路外部中断输入门禁和红外探测两路信号(采用两个小按键模拟),中断信号输入后能将报警信息在四位一体数码管上显示,并输出声光报警信号。 第三章 课题分析与整体构思一. 课题分析 (1)警情探测:在该设计中,需采用两路外部中断输入门禁报警和红外报警,分别采用两个小按键模拟。其中一个按键模拟门禁报警,对应外部中断0;另一个按键模拟红外报警,对应外部中断1。(2)报警设计:正常
3、状态下, 数码管不显示,当发生门禁报警时,系统发出光报警信息并在数码管显示1;,当发生红外报警时系统发出光报警信息并在数码管显示0。只有由主人按下报警接触按钮或系统复位后,才能解除声光报警并将数码管不显示。二 整体构思: (1)程序构思:在该设计中,需采用两路外部中断输入门禁报警和红外报警,采用单片机C语言编写程序比较易读且相对汇编思路清晰简单。以下几个子函数必不可少:LCD的初始化子函数、LCD忙检测子函数、写指令子函数、LCD显示子函数、中断计数器初始化子函数、两个外部中断子函数以及主函数。(2)硬件构思:正常状态下, 数码管不显示,当发生门禁报警(即按下小按键)时,系统发出声光报警信息(
4、第一个发光二级管亮)并在四位一体数码管上显示0;,当发生红外报警时系统发出声光报警信息(第二个发光二级管亮)并在数码管显示1。只有按下报警接触按钮或系统复位键后,才能解除声光报警并将数码管熄灭。第四章 程序设计一、流程图:首先单片机上电复位,并进行初始化包括寄存器和数码管,当发生报警事件时,单片机驱动声光报警装置并且在数码管上显示相应的报警信息,退出中断时,单片机检测报警解除按钮,当报警解除按钮被按下时单片机关闭声光报警并清除数码管上的报警信息,具体的程序流程如下。上电复位EA=0数码管初始化INT0、INT1 均设为下降沿触发EA = 1P3.4 是否为0?检测P3.4解除报警信息是否终止图
5、1 主程序流程图中断入口显示报警信息声光报警退出中断图2 中断函数流程图二、程序清单:#include#define uint unsigned int #define uchar unsigned charuchar code table=0xbf,0xbf,0xbf,0xbf;uchar code table1=0x86,0x86,0x86,0x86;uchar code table2=0xfe,0xfd,0xfb,0xf7;uint a,b,c,flag,temp,aa,bb,i=1;uint z=0;sbit red=P15;sbit spe=P16;sbit yellow=P17;
6、void delay(uint z) uint x,y;for(x=z;x0;x-)for(y=40;y0;y-);void init()EA=1;EX0=1;EX1=1;TCON=0x55;TMOD=0x15;TH0=(65536-1)/256;TL0=(65536-1)%256;ET0=1;ET1=1;TH1=(65536-50000)/256;TL1=(65536-50000)%256;void main()while(1)P2=0x0f;init();yellow=1;red=1;while(flag=1)if(aa=1)aa=0;flag=0;for(a=0;a=10)yellow=
7、1;spe=0;P2=0x0f;while(bb=20)bb=0;while(temp=1)if(aa=1)aa=0;temp=0;for(a=0;a=10)red=1;spe=0;P2=0x0f;while(bb=20)bb=0; void exter0() interrupt 0flag=1;void exter1() interrupt 2temp=1;void timer0() interrupt 1 TH0=(65536-1)/256;TL0=(65536-1)%256;aa+;void timer1() interrupt 3TH1=(65536-50000)/256;TL1=(6
8、5536-50000)%256;bb+;/*if(bb=20)bb=0;b+;*/三、程序分析解释: 本程序包括LCD的初始化子函数、LCD忙检测子函数、写指令子函数、LCD显示子函数、中断初始化子函数、两个外部中断子函数以及主函数。用P0口作为七段数码管的输出,用P1.5、P1.6、P1.7分别作为两路发光二级管以及蜂鸣器的输出,由于蜂鸣器实验室没有,所以我们采用了发光二级管代替。LCD忙检测子函数中不断检测p0口有无输出即数码管有无显示数据,如果不忙则结束此循环,执行下一个语句;写指令子函数中先判断是否为RS=0和RW=0,如果满足则可以写入指令;LCD显示子函数中,当RS=1和RW=0时
9、,可以写入数据,显示在数码管上;初始化包括中断标志、中断允许、中断优先级定时器控制寄存器等得设定,具体为定时计数器工作方式1,负脉冲触发,EA=1;ET1=1;EX1=0;ET0=1;EX0=1,除串行口,开所有中断,外部中断为高优先级;两个外部中断子函数首先将TR1置反,显示清屏,用if,else语句判断两个灯的亮灭情况,并将蜂鸣器值求反。主函数则是按设计顺寻调用各个子函数,实现其功能。第五章:硬件电路设计一、 MSC-51芯片简介MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 报告 简易 声光 报警器

链接地址:https://www.31ppt.com/p-4147734.html