您的位置 首页 解答

根据单片机的简易报警器

一、需求分析现代社会,家庭安全、财产安全和社会公共安全已成为人们普遍关注的问题。盗贼破门而入、爬窗而出,博物馆展品无故丢失,江…

一、需求剖析

现代社会,家庭安全、产业安全和社会公共安全已成为人们遍及重视的问题。响马破门而入、爬窗而出,博物馆展品无故丢掉,江河水位上涨……这一系列问题都和人们日子休戚相关。

针对这类现象,今使用单片机的原理,特规划了一款简易报警器,来处理这些问题。

二、规划规划

1、全体构思体系,确认作业原理。

2、用Protel99规划电路图,确认所需元件参数,并由此规划PCB图。

3、购买所需元件和试验板,根据PCB焊接电路。

4、用KeilC51编写程序,并用仿真器仿真经过,下载至芯片AT89S52。

5、调试硬件体系,契合预期设想。

6、立异改善体系。

三、原理规划

原理简介

经过单片机AT89S52操控赤色LED2、绿色LED1、蜂鸣器U1和监测信号端口J2,C3扫除搅扰信号。图中S2、EC1和R2组成单片机复位电路,三极管Q0起音频扩大效果,晶振Y0为12MHz,J1接DC5V电源

作业描绘

安全情况下,绿灯点亮,红灯平息,喇叭无声;一旦信号监测端口有脉冲或电平改变(依场合设置为高脉冲或低脉冲,高电平或低电平)呈现,即触发报警器进入报警状况,红绿灯替换闪耀,喇叭宣布警报声。

除非封闭电源或按下复位键,不然会报警不止,然后到达报警意图。

四、硬件规划

1、PCB的规划

PCB特点:单面板7.62×5.08cm2 (可依场合小型化)

2、%&&&&&%清单

3、元件设备图

4、布线图

5、硬件三维图

五、单片机程序

1、程序流程图

2、C言语程序

#include
#define Signal 0x00 //脉冲信号界说
sbit LED_G=P0^0;//绿灯驱动端口
sbit LED_R=P0^1;//红灯驱动端口
sbit Pulse=P2^0;//脉冲信号检测端口
sbit Buzzer=P2^1;//喇叭驱动端口
unsigned int Count=0;//闪耀时刻计数
//延时1毫秒函数
void Delay_ms(unsigned int ms)
{
unsigned char Temp;
while(ms–)
for(Temp=0;Temp<120;Temp++);
}
//高脉冲信号扫描函数
unsigned char Key_Scan()
{
if(Pulse==0)
{
Delay_ms(100);
if(Pulse==1)
{
Delay_ms(200);
return Signal;
}
else return 0xff;
}
else return 0xff;
}
//定时器0初始化
void Timer_Start()
{
TMOD=0x01;
TH0=0xfc;
TL0=0x18;
TR0=0;
ET0=1;
EA=1;
}
//定时器0中止服务函数,闪灯和鸣喇叭
void Timer0_Serve()interrupt 1
{
TH0=0xfc;
TL0=0x18;
Count++;
if(Count>=200)
{
Count=0;
LED_G=~LED_G;
LED_R=~LED_G;
Buzzer=~Buzzer;
}
}
//主函数
void main()
{
unsigned char Key_Code;
Timer_Start();
LED_G=0;
LED_R=1;
Buzzer=1;
Pulse=1;
while(1)
{
Key_Code=Key_Scan();
switch(Key_Code)
{
case Signal:TR0=1;break;
default:break;
}
}
}

3、汇编程序

;程序称号:
; 简易报警器
;硬件资源:
; 赤色LED————-P2.3
; 绿色LED————-P2.4
; 蜂鸣器————–P2.0
; 脉冲输入————P3.4

;————————————-
;端口界说
ledgequp2.4
ledrequp2.3
bzzrequp2.0
plsequp3.4

;————————————-
;数据存储
pulseequ20h.0

;————————————-
;程序代码
org0000h
jmpmain
org0100h
;体系初始化
init :
clrpulse
setbledr
clrledg
setbbzzr
setbpls
ret

;延时ms毫秒
delay_ms:
movr7,a
delay1 :movr6,#5
delay2 :movr5,#100
djnzr5,$
djnzr6,delay2
djnzr7,delay1
ret

;脉冲检测
pls_ch :
jbpls,fail
mova,#1
calldelay_ms
jnbpls,succ
jmpfail
succ :setbpulse
jmpexit
fail :clrpulse
exit :ret

;报警信号发生
alarm :
cplbzzr
cplledr
movc,ledr
cplc
movledg,c
ret

;主程序
main :
callinit
scan :callpls_ch
jbpulse,start
jmp scan
start :callalarm
mova,#200
calldelay_ms
jmp start
end

阐明:汇编程序的规划思路与C言语的有所不同,程序更高效和紧凑,主张选用。

六、使用举例

1、家庭安全:在J2端口接一个大面积按键,置于门口地毯之下,夜间翻开报警器,只需有人踏上地毯,J2取得一个低脉冲,即触发报警,假如再在窗棂上安顿一个滑触开关,一起接入J2端口,则可到达归纳防盗意图。

2、文物安全:在J2端口接一个小按键,置于博物馆文物之下,全天翻开报警器,只需有人拿起文物,按键弹起,J2端口当即取得一个高脉冲,即触发报警,假如再添加相同的检测端口和指示灯,则可对多个文物一起监控。

3、水利安全:在J2端口接一个浮力触发设备,放置在江边,设定水位报警点,一旦到达风险水位,相同报警,假如在江边安顿一个水位到电压的传感器,经AD转化送入单片机,可实时长途监测水位改变。

……

七、功用扩展

在脉冲端口接入一个温度传感器,如DS18B20,单片机经过对温度采样,可完成主动温度超限报警。

……

阐明:本报警器作为一个简略的单片机使用规划,适用于毕业规划或课程规划,并且可根据需求进行相应的扩展规划。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/jieda/266831.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部