基于gsm模块的红外线防盗报警器毕业论文内容摘要:

{ TMOD = 0x20。 //TO 定时器,工作方式 2 13 SCON = 0x50。 //晶振 ,波特率为 300,工作在方式 2上 TH1 = 0xA0。 TL1 = TH1。 PCON = 0x00。 TR1 = 1。 } void UARTInterrupt(void) interrupt 4 //串口中断函数 ,这里因为是纯发送的,所以接收的没用 到 { if(RI) { RI = 0。 } else TI = 0。 } void SendOneByte(unsigned char c) { SBUF = c。 while(!TI)。 TI = 0。 } 通过以上程序可以使单片机输出 含有 38KHZ 的调制信号 ,如下图 14 图 单片机输出 含有 38KHZ的调制信号 图 15 图 发射部分小结 1) 该部分利用单片机 口发送连续的 38KHZ 方波和 口串口通信波特率为 300 的方波经过逻辑与后输出 来 驱动红外线发光二级管发光 2)创新点: 通过单片机发射 38KHZ 方波,使其发射的频率更加的稳定。 用其它电路实现,需要考虑电子元器件工作过程中温度变化的影响,而用单片机的定时器则可以忽略这样的问题,使其产生的频率更加地稳定。 3)误差: 实际产生的 38KHZ 方波和理论值有误差, 38KHZ 方波周期的理论值为 26 微秒, 实际效果 所 产生的周期为 25 到 26 微秒 如图 示 ,不过此周期产生的方波频率均可以被接受头识别为低电平。 4)遇到的问题: 采用定时器定时方法产生如图 误, 即不能产生 38KHZ 的方波, 用到的程序如下 : include define uint unsigned int sbit D=P1^0。 static uint time。 16 void main() { D=0。 TMOD=0x02。 //T0 定时器工作方式 2 TH0=204。 //给定时器赋计数初值( 定时时间为 13 微秒) TL0=204。 EA=1。 //开总开关 ET0=1。 //允许 T0 中断 TR0=1。 //启动 T0定时器 while(1)。 //等待中断 } void T0_time()interrupt 1 { time++。 if(time24) { D=1。 if(time==54) { time=0。 } } else D=~D。 } 原因: 单片机使用的晶振为 ,机器周期为 微秒,当在执行中断过程中 ,还没有退出中断,定时器又再一次地溢出,以此反复,从而产生错误,解决的方法是提高单片机使用的晶振,当提高到 的时候可以满足要求,为了进一步优化程序,最后没采用此程序。 17 接收部分 该接收部分是通过一体化红外接收头 VS1838B接收,接收电路如图。 图 接收电路 一体化红外线接收头 1838B [6] 1838B 内部电路包括红外监测 二 极管 , 放大器 ,限副器,带通滤波器, 积分电路 ,比较器等。 红外监测二极管监测到红外信号, 然后把信号送到放大器和限幅器,限幅器把脉冲幅度控制在一定的水平,而不论红外发射器和接收器的距离远近。 交流信号进入带通滤波器,带通滤波器可以通过 30khz 到 60khz 的负载波,通过解调电路和积分电路进入比较器,比较器输出高低电平,还原出发射端的信号波形。 注意输出的高低电平和发射端是反相的,这样的目的是为了提高接收的灵敏度。 一体化红外接收头 1838B,如图 所示 18 图 一体化 红外接收头 1838B 红外接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和信号输出脚。 根据发射端调制载波的不同应选用相应解调频率的接收头。 红外接收头内部放大器的增益很大,很容易引起干扰,因此在接收头的供电脚上须加上滤波电容。 六反相器 74HC04 [7] 其功能引脚图如图 所示 图 19 接收部分小结 1)该部分 通过一体化红外线接收头接收发射部分送来的红外信号,将其送入74HC04 六反相器,还原发射端发射的波形 ,并将信号传到单片机上进行处理。 2)创新点: 采用间歇式的发送 38KHZ 方波,一方面是满足接收头不能连续接收 38KHZ 方波的需求,另一方面也提高了红 外线发射和接收的抗干扰能力。 3)遇到的问题: 通过 VS1838B 接收到的波形不是 38KHZ 的方波 ;当有人入侵时 LED 灯不会亮。 原因: VS1838B 将接收到的 38KHZ 左右的红外信号输出低电平,接收到的高电平仍然输出高电平,此过程如图 所示 图 报警部分 该部分是由 工作在最小系统下的 STC89C52 单片机做处理芯片, 对接收头经过 74HC04 反相器 传送过来的信号 进行 检测 ,如果是发射端发送的信号 就不触发 GSM 模块 , 并且 LED 灯亮,否则触发。 其电路原理图如图 所示。 20 图 报警电路原理图 89C52单片机 T2 定时器 [8] 89C52 的 T2定时器有三种工作模式,捕获模式,自动重装模式和波特率发生器模式,通过设置 T2 的控制寄存器可以选用其工作模式。 T2的控制寄存器的功能描述如下: T2CON( T2 的控制寄存器) ,字节地址 0C8H: 符 号 TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RT2 各位的定义如下: TF2:定时 /计数器 2溢出标志, T2溢出时置位,并申请中断。 只能用软件清除,但 T2 作为波特率发生器使用的时候, (即 RCLK=1 或 TCLK=1),T2 溢出时不对 TF2置位。 21 EXF2:当 EXEN2=1 时,且 T2EX 引脚( )出现负跳变而造成 T2 的捕获或重装的时候, EXF2 置位并申请中断。 EXF2 也是只能通过软件来清除的。 RCLK:串行接收时钟标志,只能通过软件的置位或清除;用来选择 T1( RCLK=0)还是 T2( RCLK=1)来作为串行 接收的波特率产生器 TCLK:串行发送时钟标志,只能通过软件的置位或清除;用来选择 T1( TCLK=0)还是 T2( TCLK=1)来作为串行发送的波特率产生器 EXEN2: T2 的外部允许标志,只能通过软件的置位或清除; EXEN2=0:禁止外部时钟触发 T2; EXEN2=1:当 T2未用作串行波特率发生器时,允许外部时钟触发T2,当 T2EX 引脚输入一个负跳变的时候,将引起 T2 的捕获或重装,并置位 EXF2,申请中断。 TR2: T2 的启动控制标志; TR2=0:停止 T2; TR2=1:启动 T2 C/T2: T2 的定时方 式或计数方式选择位。 只能通过软件的置位或清除; C/T2=0:选择 T2 为定时器方式; C/T2=1:选择 T2 为计数器方式,下降沿触发。 CP/RT2:捕获 /重装载标志,只能通过软件的置位或清除。 CP/RT2=0 时,选择重装载方式,这时若 T2溢出( EXEN2=0 时)或者 T2EX 引脚( )出现负跳变( EXEN2=1 时),将会引起 T2 重装载; CP/RT2=1 时,选择捕获方式,这时若 T2EX引脚( )出现负跳变( EXEN2=1 时),将会引起 T2 捕获操作。 但是如果 RCLK=1或 TCLK=1 时, CP/RT2 控 制位不起作用的,被强制工作于定时器溢出自动重装载模式。 捕获模式工作原理: 单片机内部有两组寄存器,其中一组的内部数值是按固定机器周期递增或是递减,通常这组寄存器就是定时器的计数器寄存器( TL2, TH2),当 口有一负跳变时,捕获便会立即将此时第一组寄存器的数值准确地捕获,并存入 RCAP2L 和 RCAP2H 寄存器中,同时想 CPU 申请中断,以方便软件记录。 当 22 该引脚的下一次负跳变来临时,便会产生另一个捕获,再次向 CPU 申请中断,软件记录两次捕获之间数据后,便可以准确地计算出该脉冲的周期。 89C52单片机串行口通信 [9] 串行口的控制寄存器 ,如图 所示 控制寄存器 SCON 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H SM0 SM1 SM2 REN TB8 RB8 TI RI 串行口电源控制寄存 器 ,如图 所示 电源及波特率选择寄存器 PCON SMOD GF1 GF0 PD IDL 图 工作方式选择 多机通信控制位 允许串行接收位 发送数据第九位 接收数据第九位 发送中断标志位 接收中断标志位 图 串行通。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。