51单片机入门项目总结:简易版防盗报警器
好久没有更新博客了,今天开始有时间就写写博客,总结一下之前做过的项目,以及对一些技术的思考。因为目前做过的项目都是为了学习单片机的某个知识点而做的,完成程度并不完整,后面也会对这些做过的项目进行完善和拓展,同样会记录在csdn博客。
简单介绍一下项目
当你将电动车的警报模式开启之后,如果有人接触到了电动车,报警器就会发出警报。
未来完善项目的设想
后续我想加入通信功能,再使用一个简单的app,可以在发出预警的同时,将预警信息发送到车主的手机app上,在app上可以显示车子的实时定位。
需要用到的模块
一块51单片机
震动传感器
一个小喇叭
433M无线收发模块
足够的杜邦线
一台能用的电脑
这个项目用到的技术
为何说这个项目比较基础?因为这个项目完全可以用IO口来实现,就是把各个需要调用的模块接到单片机的IO口上,然后就可以通过编写程序来控制这些硬件模块。
那就开始实现这个项目吧
首先需要用到的就是51单片机,刚开始的时候可以先测试一下板子是否可用,可以先搞一个点亮LED灯的程序来测试一下单片机是否可以成功烧录程序。没问题的话,就可以继续往下一步走。当然,这个步骤是可以省略,毕竟碰到板子出问题的概率还是蛮低的。也不是没有吧,像我之前就碰到了,害。如何使用上述模块,看下面。
震动传感器
上面这个图就是震动传感器,可以看到上面有四个针脚,VCC和GND是负责给传感器供电的,DO口就是负责数字信号输出,这个口一般就是接在单片机的IO口上。当VCC和GND接上单片机的时候,震动传感器的电源指示灯就会亮。当前面的SW-感受到震动时,开关信号指示灯就会亮,关于接收震动的灵敏度可以通过调节电位器来调节。
继电器模块
VCC和GND分别接电源正极和负极,IN接单片机的IO口。在这个项目中,可以看一下第二张图的原理图,接喇叭的正负极分别接到NO和COM口上,就形成了一个电路。在这里面起控制作用的就是继电器里面的铁片,当IO口发来的是低电平时,NO和COM口就会接到一起,电路接通,喇叭就会响;当IO口发来的是高电平时,COM端就会和NC端接在一起,电路处于不接通的状态。
433M无线发射接收模块
还是老样子,VCC和GND负责供电。上面的D0到D3管脚,分别对应的是遥控器上的ABCD。
这些模块如何使用之后,就可以开始制作报警器了。 关于433M无线发射接收模块的内容,可以参考一下这个网站:
话不多说,直接上代码:
#include "reg52.h"
#include
#define J_ON 1 //状态位
#define J_OFF 0 //状态位
sbit virate = P3^3; //震动传感器
sbit switcher = P1^3; //继电器
sbit D0_ON = P1^2; //433M打开
sbit D1_OFF = P1^1; //433M关闭
void Delay2000ms() //@11.0592MHz
{
unsigned char i, j, k;
_nop_();
i = 15;
j = 2;
k = 235;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void Delay500ms() //@11.0592MHz
{
unsigned char i, j, k;
_nop_();
i = 4;
j = 129;
k = 119;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void main()
{
int mark = J_OFF;
while(1)
{
//查询哪一个按键被按下
if(D0_ON == 1)
{
//这个时候就会进入警报模式
switcher = 0;
delay2000ms();
switcher = 1;
//这个时候状态就变成警报状态
mark = J_ON;
}
//B按键被按下
if(D1_OFF == 1){
switcher =0;
delay500ms();
switcher = 1;
//警报状态解除,变成正常状态
mark = J_OFF;
}
//判断状态位
if(mark == J_ON)
{
//震动传感器发低电平时
if(virate == 0)
{
switcher = 0;
//下面的可要可不要,不要的话,一旦有震动就会一直响。
//delay2000ms();
//switcher = 1;
}
else
{
switcher = 1;
}
}
}
}
项目效果
最后呈现出来的效果:遥控器按下A,进入警报模式,喇叭会响2秒钟;然后就会监测是否震动。当感受到震动时,喇叭就会发出警报声(在这里因为我不想他响这么久,就设置了只响两秒,正常的话会一直长响)。遥控器按下B,就会退出警报模式,不管怎么震,都不会响。
效果视频可以看看我主页的里面的视频栏目,因为上传视频需要时间审核,等上传成功后我会在后面补上。
简易版电动车报警器效果图
第一次写项目总结,有不足的地方或者不对的地方请多多指教。