课程设计(论文)单片机变频报警控制系统_第1页
课程设计(论文)单片机变频报警控制系统_第2页
课程设计(论文)单片机变频报警控制系统_第3页
课程设计(论文)单片机变频报警控制系统_第4页
课程设计(论文)单片机变频报警控制系统_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、前 言 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器cpu随机存储器ram、只读存储器rom、多种i/o口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、a/d转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机简又称为微型控制器,是微型计算机的一个重要分支。单片机是70年代中期发展起来的一种大规模集成电路芯片,是cpu、ram、rom、i/o接口和中断系统于同一硅片的器件。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做

2、到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的cd4000系列这些纯硬件来搞定的话,电路一定是一块大pcb板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! 由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的cpu,也没有像硬盘那样的海量存储设备。一个可视化高级语

3、言编写的小程序里面即使只有一个按钮,也会达到几十k的尺寸!对于家用pc的硬盘来讲没什么,可是对于单片机来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用pc上来运行,家用pc的也是承受不了的80年代以来,单片机发展迅速,各类新产品不断涌现,出现了许多高性能新型机种,现已逐渐成为工厂自动化和各控制领域的支柱产业之一。报警器是一种为防止或预防某事件发生所造成的后果,以声音、光、气压等形式来提醒或警示我们应当采取某种行动的电子产品。随着科技的进步,机械式报警器越来越多地被先进的电子报警器代替,经常

4、应用于系统故障、安全防范、交通运输、医疗救护、应急救灾、感应检测等领域,与社会生产、生活密不可分。分为:智能家用防盗报警器门磁感应器。家庭盗贼侵入主要是门和窗,门盗的比例又大于窗盗。在每个住户大门上安装有一个门磁感应器。如有盗匪撬门,门磁感应器会即刻将此信息传输给家庭报警主机,主机报警,将此信息传输到控制中心,中心会立即显示报警地点、性质(门盗)。窗盗采用红外线感应探头在每套房的窗口及阳台进行布防,当有盗贼从窗口或阳台进入时,探测器立即通过家庭主机传输至控制中心。同时,家庭主机也报警,控制中心会立即显示出报警地点、性质(窗盗)。煤气泄漏也是现代家庭不得不防的安全措施,这里采用了煤气感应报警器,

5、安装于厨房。当煤气泄漏时,达到一定浓度后,感应器立即将此信号通过家庭主机传输到报警中心。所以本课程设计介绍了简易报警器的设计和运用。掌握单片机的技术和运用到实践中。 目 录一,设计任务及要求二,报警器的设计方框图三,设计方案选择四,8051单片机引脚图与引脚功能简介五,报警器的说明六,在8051中变频的实现七,波特率的确定八,主程序介绍九,子程序的调用十,中断请求心得体会参 考 文 献一,设计任务及要求:题目:变频报警控制系统。要求:利用8051单片机的引脚进行按键报警,接开关1,用小喇叭发出频率为10khz报警的声音,持续20s。按开关2,小喇叭发出频率为10khz和5khz的震荡报警的声音

6、,持续60s。任务:1,涉及硬件电路图,画出电路原理图; 2,画出程序流程图; 3编制程序,写出源程序代码; 4,写出5000子的详细说明书,要求字迹工整,原理叙述正确,会计算主 要元器件的一些参数,并选择元器件。 5,个人总结。二,报警器的设计方框图按下s1指令跳转到itip按下s2指令跳转到itip1开始jc判断c=0jc判断c=1喇叭报警喇叭报警jc判断c=0指令跳转到itip喇叭报警三,设计方案选择方案一用8051单片机的引脚进行按键报警,如下图,按下开关s1按下列程序进行运行,80c51org 0000hreset:ajmp mainorg 0003hajmp it0porg 001

7、bhajmp it1porg 0100hmain: mov sp,#60h mov b,#10mov tmod,#11hmov tl0,#0b0hmov th1,#3chmov tli,#34hmov th1,#0fehsetb tr0 setb tr1 setb et0setb et1setb eahere: ajmp hereit0p: mov tl0,#0b0hmov th1,#3ch djnz b,loop cpl cloop:reti it1p: jc it1p1mov tl1,#34hmov th1,#0fehajmp qfit1p1:mov tl1,#1ahmov th1,#0f

8、fhqf: cpl p3.4retiret方案二利用8051单片机的引脚进行按键报警,接开关s1,用小喇叭发出频率为10khz报警的声音,持续20s。按开关s2,小喇叭发出频率为10khz和5khz的震荡报警的声音,持续60s。80c51org 0000hreset:ajmp main ;转主程序org 001bh ;t1中断入口ajmp it1p ;转t1中断处理程序it1porg 0100hmain: mov sp,#60h ;设堆栈指针mov r0,#100 ;置1khz时计数初值mov r1,#20mov tmod,#10h ; 设置t1为方式1mov tli,#34h ;t1置1kh

9、z时初值mov th1,#0fehsetb tr1 ;启动t1setb et1 ;允许t1中断setb ea ;cpu开中断here: ajmp here ;自身跳转it1p: ;t1中断服务程序jc it1p1 ;c=0 1s1khz方波。c=1,跳转到it1p1mov tl1,#34hmov th1,#0fehdjnz r0, qfmov r0,#100djnz r1, qf setb cmov r2,#200 ;置2khz时计数初值mov r3,#20it1p1: ;1s2 khz方波程序mov tl1,#1ah mov th1,#0ffhdjnz r2,qfmov r2 #200din

10、z r3,qf clr cmov r0,#100 ;重置1khz时计数初值mov r1,#20qf: cpl p3.4 ;p3.4的状态取反retiret方案一与方案二相比方案二要更为好一些,能够更加好的实现设计课题的要求。接开关s1,用小喇叭发出频率为10khz报警的声音,持续20s。按开关s2,小喇叭发出频率为10khz和5khz的震荡报警的声音,持续60s。所以我们选择的是方案二为本次课程设计的主要方案。四,8051单片机引脚图与引脚功能简介 电源: vcc - 芯片电源,接+5v; vss - 接地端; 时钟:xtal1、xtal2 - 晶体振荡电路反相输入端和输出端。 控制线:控制线

11、共有4根, 1 ale/prog:地址锁存允许/片内eprom编程脉冲 ale功能:用来锁存p0口送出的低8位地址 prog功能:片内有eprom的芯片,在eprom编程期间,此引脚输入 编程脉冲。 2 psen:外rom读选通信号。 3 rst/vpd:复位/备用电源。 rst(reset)功能:复位信号输入端。 vpd功能:在vcc掉电情况下,接备用电源。 4 ea/vpp:内外rom选择/片内eprom编程电源。 ea功能:内外rom选择端。 vpp功能:片内有eprom的芯片,在eprom编程期间,施加编程电源vpp。 i/o线 80c51共有4个8位并行i/o端口:p0、p1、p2、

12、p3口,共32个引脚。p3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。80c51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照-单片机引脚图: l p0.0p0.7 p0口8位双向口线(在引脚的3932号端子)。 l p1.0p1.7 p1口8位双向口线(在引脚的18号端子)。 l p2.0p2.7 p2口8位双向口线(在引脚的2128号端子)。 l p3.0p3.7 p3口8位双向口线(在引脚的1017号端子)。 运算部件:它包括算术、逻辑部件alu、布尔处理器、累加器acc、寄存器b、暂存器tmp1和tmp2、程序状态字寄存器psw以及十进制调整电路等。运算部件

13、的功能是实现数据的算术逻辑运算、位变址处理和数据传送操作。 mcs-51单片机的alu功能十分强,它不仅可对8位变量进行逻辑“与”、“或”、“异或”、循环、求补、清零等基本操作,还可以进行加、减、乘、除等基本运算。为了乘除运算的需要,设置了b寄存器。在执行乘法运算指令时,用来存放其中一个乘数和乘积的高8位数;在执行除法运算指令时,b中存入除数及余数。mcs-51单片机的alu还具有一般微机alu,如z80、mcs-48所不具备的功能,即布尔处理功能。单片机指令系统中的布尔指令集、存储器中的位地址空间与cpu中的位操作构成了片内的布尔功能系统,它可对位(bit)变量进行布尔处理,如置位、清零、求

14、补、测试转移及逻辑“与”、“或”等操作。在实现位操作时,借用了程序状态标志器(psw)中的进位标志cy作为位操作的“累加器”。 运算部件中的累加器acc是一个8位的累加器(acc也可简写为a)。从功能上看,它与一般微机的累加器相比没有什么特别之处,但需要说明的是acc的进位标志cy就是布尔处理器进行位操作的一个累加器。mcs-51单片机的程序状态psw,是一个8位寄存器,它包含了程序的状态信息。 2、控制部件 控制部件是单片机的神经中枢,它包括时钟电路、复位电路、指令寄存器、译码以及信息传送控制部件。它以主振频率为基准发出cpu的时序,对指令进行译码,然后发出各种控制信号,完成一系列定时控制的

15、微操作,用来控制单片机各部分的运行。其中有一些控制信号线能简化应用系统外围控制逻辑,如控制地址锁存的地址锁存信号ale,控制片外程序存储器运行的片内外存储器选择信号ea,以及片外取指信号psen。五,报警器的说明在机壳的一侧装有面板,面板上开设有面板孔,另一侧装有电源端子、信号端子,在机壳内装有变压整流电路和电路板,在电路板上装有逻辑门启动、译码、振荡发声集成电路、上拉电阻、延时阻容元件、限流电阻、驱动三极管、定时阻容元件、隔直电容、扬声器、发光二极管限流电阻、发光二极管;、其电路结构为:信号端子接上拉电阻、逻辑门启动集成电路、译码集成电路,逻辑门启动集成电路接延时阻容元件,延时阻容元件接振荡

16、发声集成电路和定时阻容元件,声音信号经隔直电容接扬声器,译码集成电路经限流电阻接驱动三极管,驱动三极管输出经发光二极管限流电阻接发光二极管,驱动三极管中有一只的发射极接变压整流电路,其它驱动三极管的发射极接振荡发声集成电路的输出,信号端子中的公共端子接变压整流电路,变压整流电路接电源端子。六,在8051中变频的实现计数初值的计算时或计数方式下计数初值如何确定,定时器选择不同的工作方式,不同的操作模式其计数值均不相同。若设最大计数值为 m ,各操作模式下的 m 值为: 模式 0 : m=2 13 =8192 模式 1 : m=2 16 =65536 模式 2 : m=2 8 =256 模式 3

17、: m=256 ,定时器 t0 分成 2 个独立的 8 位计数器,所以 th0 、 tl0 的 m 均为 256 。 因为 mcs-51 的两个定时器均为加 1 计数器,当初到最大值( 00h 或 0000h )时产生溢出,将 tf 位置 1 ,可发出溢出中断,因此计数器初值 x 的计算式为: x=m- 计数值式中的 m 由操作模式确定,不同的操作模式计数器的长不相同,故m值也不相同。而式中的计数值与定时器的工作方式有关。 1 、计数工作方式时 计数工作方式时,计数脉冲由外部引入,是对外部冲进行计数,因此计数值根据要求确定。其计数初值: x=m- 计数值 例如:某工序要求对外部脉冲信号计 10

18、0 次, x=m-100 2 、定时工作方式时 定时工作方式时,因为计数脉冲由内部供给,是对机器周期进行计数,故计数脉冲频率为 f cont =f osc 1/12 、计数周期 t=1/f cont =12/f osc 定时工作方式的计数初值 x 等于: x=m- 计数值 =m-t/t=m- ( f osc t ) /12 式中: f osc 为振荡器的振荡频率, t 为要求定时的时间。 定时器有两种工作方式 :即定时和计数工作方式。由 tmod 的 d6 位和 d2 位选择,其中 d6 位选择 t1 的工作方式, d2 位选择 t0 的工作方式。 =0 工作在定时方式, =1 工作在计数方式

19、。并有四种操作模式: 1 、模式 0 : 13 位计数器, tli 只用低 5 位。 2 、模式 1 : 16 位计数器。 3 、模式 2 : 8 位自动重装计数器, thi 的值在计数中不变, tli 溢出时, thi 中的值自动装入 tli 中。 4 、模式 3 : t0 分成 2 个独立的 8 位计数器, t1 停止计数。mcs-51 有 5 个中断源,可分为 2 个中断优先级,即高优先级和低优先级,中断自然优先级: 外部中断 0 ;定时器 0 中断; 外部中断 1 ;定时器 1 中断 ;串行口中断 ;定时器 2 中断 ( 1 )同级或高优先级的中断正在进行中;( 2 )现在的机器周期还

20、不是执行指令的最后一上机器周期,即正在执行的指令还没完成前不响应任何中断;( 3 )正在执行的是中断返回指令 ret1 或是访问专用寄存器 ie 或 ip 的指令,换而言之,在 reti 或者读写 ie 或 ip 之后,不会马上响应中断请求,至少要在执行其它一要指令之扣才会响应。 (一)中断响应条件 cpu 响应中断的条件有: ( 1 )有中断源发出中断请求; ( 2 )中断总允许位 ea=1 ,即 cpu 开中断;( 3 )申请中断的中断源的中断允许位为 1 ,即没有被屏蔽。所以为10khz是算的初始值为65536100*6/12=所以tl1=th1=程序如下mov tl1,#34hmov

21、th1,#0feh为20khz是算的初始值为6553650*6/12=所以tl1=th1=程序如下mov tl1,#34hmov th1,#0feh所以用8051的定时器1产生一个10khz的方波,和一个20khz的方波。有p3.4输出。给发声器,发出报警。七,波特率的确定: 对方式0来说,波特率已固定成fosc12,随着外部晶振的频率不同,波特率亦不相同。常用的fosc有12mhz和6mhz,所以波特率相应为1000103和500103位s。在此方式下,数据将自动地按固定的波特率发送接收,完全不用设置。对方式2而言,波特率的计算式为2smodfosc64。当smod0时,波特率为fm64;当

22、smod1时,波特率为fosc32。在此方式下,程控设置smod位的状态后,波特率就确定了,不需要再作其它设置。对方式1和方式3来说,波特率的计算式为2smod32t1溢出率,根据smod状态位的不同,波特率有tl32溢出率和t116溢出率两种。由于t1溢出率的设置是方便的,因而波特率的选择将十分灵活。前已叙及,定时器tl有4种工作方式,为了得到其溢出率,而又不必进入中断服务程序,往往使t1设置在工作方式2的运行状态,也就是8位自动加入时间常数的方式。由于在这种方式下,t1的溢出率(次秒)计算式可表达成:八,主程序介绍main: mov sp,#60h ;设堆栈指针mov r0,#100 ;置

23、1khz时计数初值mov r1,#20mov tmod,#10h ; 设置t1为方式1mov tli,#34h ;t1置1khz时初值mov th1,#0fehsetb tr1 ;启动t1setb et1 ;允许t1中断setb ea ;cpu开中断起始程序org 0000hreset:ajmp main ;转主程序org 001bh ;t1中断入口ajmp it1p ;转t1中断处理程序it1porg 0100h九,子程序的调用子程序是微机基本程序结构中的1种,基本程序结构包括顺序(简单)、分支(判断)、循环、子程序和查表等5种。 子 程序是一组可以公用的指令序列,只要给出子程序的入口地址就

24、能从主程序转入子程序。子程序在功能上具有相对的独立性,在执行主程序的过程中往往被多次调 用,甚至被不同的程序所调用。一般微机首先执行主程序,碰到调用指令就转去执行子程序,子程序执行完后,返回指令就返回主程序断点(即调用指令的下一条指 令),继续执行没有处理完的主程序,这一过程叫做(主程序)调用子程序过程。子程序结构可简化程序,防止重复书写错误,并可节省内存空间。计算机中经常把常用的各种通用的程序段编成子程序,提供给用户使用。用户在自己编写的程序中,只要会调用这些子程序,就可大大简化用户编程的困难。 中断是计算机中央处理单元cpu与外设i/o交换数据的一种方式,除此方式外,还有无条件、条件(查询

25、)、存贮器直接存取dma和i/o通道等四种方式。由于无条件不可靠,条件效率低,dma和i/o通道两方式硬件复杂,而中断方式cpu效率高,因此一般大多采用中断方式。本课题中也采用了子程序的调用。it1p: ;t1中断服务程序jc it1p1 ;c=0 1s1khz方波。c=1,跳转到it1p1mov tl1,#34hmov th1,#0fehdjnz r0, qfmov r0,#100djnz r1, qf setb cmov r2,#200 ;置2khz时计数初值mov r3,#20it1p1: ;1s2 khz方波程序mov tl1,#1ah mov th1,#0ffhdjnz r2,qfm

26、ov r2 #200dinz r3,qf clr cmov r0,#100 ;重置1khz时计数初值mov r1,#20十,中断请求外部中断请求源:即外中断0和1,经由外部管脚引入的,在单片机上有两个管脚,名称为int0、int1,也就是p3.2、p3.3这两个管脚。在内部的tcon中有四位是与外中断有关的。it0:int0触发方式控制位,可由软件进和置位和复位,it0=0,int0为低电平触发方式,it0=1,int0为负跳变触发方式。这两种方式的差异将在以后再谈。ie0:int0中断请求标志位。当有外部的中断请求时,这位就会置1(这由硬件来完成),在cpu响应中断后,由硬件将ie0清0。i

27、t1、ie1的用途和it0、ie0相同。(2)内部中断请求源tf0:定时器t0的溢出中断标记,当t0计数产生溢出时,由硬件置位tf0。当cpu响应中断后,再由硬件将tf0清0。tf1:与tf0类似。ti、ri:串行口发送、接收中断,在串行口中再讲解。2、中断允许寄存器ie在mcs51中断系统中,中断的允许或禁止是由片内可进行位寻址的8位中断允许寄存器ie来控制的。qf: cpl p3.4 ;p3.4的状态取反retiret心得体会本系统的设计思想来源于生活,所以所具有的功能也是为生活的方便而设置的。两个星期的课程设计结束了,从中我学到了很多东西且感悟良多体会到了课本联系实际学以至用设计思想实际动手能力都有所提高.初学单片机时觉得它深奥难懂枯燥无味通过课程设计我体会到了编程的灵活性并对它产生了浓厚的爱好.以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。课程设计从设计电路到调试结束我们失败很多次也修改很多次可谓是屡败屡战,可我们并未气馁我们坚持到了最后虽然最

温馨提示

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

评论

0/150

提交评论