




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于GSM短信模块的安防报警系统设计与实现目录摘要 附录2程序#include
"main.h"
#include
"lcd1602.h"
#include
"key.h"
#include
"ds18b20.h"
#include
"adc.h"
#include
"SIM900A.h"
uchar
key_num
=
0;//按键标志位
uchar
flag_display
=
0;//显示标志位
uint
time_num
=
0;//计时变量
uint
mq4_value,mq2_value,temp_value;
uint
temp_max
=
400;
uint
mq2_max
=
800;
uint
mq4_max
=
1000
;
bit
flag_mq4,flag_mq2,flag_temp;
void
Delay_function(uint
x);//延时函数
void
Key_function(void);//按键函数
void
Monitor_function(void);//监测函数
void
Display_function(void);//显示函数
void
Manage_function(void);//处理函数
void
main()
{
Lcd1602_Init();
//LCD1602初始化
Delay_function(50);//延时50ms
lcd1602_clean();//清屏
Delay_function(50);//延时50ms
SerialInti();
while(1)
{
Key_function();//按键函数
Monitor_function();//监测函数
Display_function();//显示函数
Manage_function();//处理函数
Delay_function(10);//延时10ms
time_num++;//计时变量+1
if(time_num
>
5000)
{
time_num
=
0;
}
}
}
void
Delay_function(uint
x)
{
uint
m,n;
for(m=x;m>0;m--)
for(n=110;n>0;n--);
}
void
Key_function(void)
{
key_num
=
Chiclet_Keyboard_Scan();//按键扫描
if(key_num
!=
0)//有按键按下
{
switch(key_num)
{
case
1://按键1
flag_display
==3
?
flag_display
=
0
:
flag_display++;
//一共4个模式
lcd1602_clean();//清屏
break;
case
2://按键2
if(flag_display
==
1)
{
temp_max+=
10;
}
if(flag_display
==
2)
{
mq2_max+=
100;
}
if(flag_display
==
3)
{
mq4_max+=100;
}
break;
case
3://按键3
if(flag_display
==
0)
{
flag_mq4
=
0;
flag_mq2
=
0;
flag_temp
=
0;
}
if(flag_display
==
1)
{
temp_max-=10;
}
if(flag_display
==
2)
{
mq2_max-=100;
}
if(flag_display
==
3)
{
mq4_max-=100;
}
break;
default:;break;
}
}
}
void
Monitor_function(void)
{
if(time_num
%
50
==
0)//500ms检测一次
{
mq4_value
=
400*((Adc0832_Get_Value(0)/256.0)*5);//获取甲烷值(0-1000)
mq2_value
=
400*((Adc0832_Get_Value(1)/256.0)*5);//获取烟雾值(0-1000)
temp_value
=
Ds18b20_Read_Temp();
}
}
void
Display_function(void)
{
switch(flag_display)//根据不同的显示标志位,显示不同的界面
{
case
0://界面0
lcd1602_display_str(1,1,"Temp:");
lcd1602_display_temp(1,6,temp_value);
lcd1602_display_str(2,1,"mq4:");
lcd1602_display_gas(2,5,mq4_value);
lcd1602_display_str(2,9,"mq2:");
lcd1602_display_gas(2,13,mq2_value);
break;
case
1://界面1
lcd1602_display_str(1,1,"
Set
Temp
MAX
");
lcd1602_display_temp(2,6,temp_max);
break;
case
2://界面2
lcd1602_display_str(1,1,"
Set
MQ2
MAX
");
lcd1602_display_gas(2,6,mq2_max);
break;
case
3://界面3
lcd1602_display_str(1,1,"
Set
MQ4
MAX
");
lcd1602_display_gas(2,6,mq4_max);
break;
default:
break;
}
}
void
Manage_function(void)
{
if(flag_display
==
0)//显示标志位为0时
{
if(mq4_value>=mq4_max)
{
if(flag_mq4
==
0)
{
BEEP=0;
LED
=
0;
send_msg_chinese("004D0051003468C06D4B6D535EA68FC79AD8FF0C8BF76CE8610F5B895168");//MQ4检测浓度过高,请注意安全
BEEP=
1;
LED
=
1;
flag_mq4
=
1;
}
}
if(mq2_value>=mq2_max)
{
if(flag_mq2
==
0)
{
BEEP=0;
send_msg_chinese("004D0051003268C06D4B6D535EA68FC79AD8FF0C8BF76CE8610F5B895168");//MQ2检测浓度过高,请注意安全
BEEP=
1;
flag_mq2
=
1;
}
}
if(temp_value>=temp_max
&&
temp_value
!=85
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 焙烤食品制造中的焙烤食品生产线创新管理考核试卷
- 2025年济南章丘区九年级中考物理一模考试试题(含答案)
- 信托产品的市场竞争分析考核试卷
- 年金保险业务的数据分析与决策支持考核试卷
- 白酒的醇酒包装与时尚设计趋势考核试卷
- 真空电子器件的时间延迟线设计考核试卷
- 畜牧机械牧场养殖场设施农业技术考核试卷
- 2025届江西省吉安市高三数学试题二模冲刺试题(八)
- 财务培训知识
- 网络文明微课课件
- 小学社会主义核心价值观教育工作总结
- 礼仪课件 -仪态礼仪
- 情绪管理(中国人民大学)超星尔雅学习通章节测试答案
- 2023年安全质量的表态发言稿5篇
- 腰椎ODI评分完整版
- 长输管道施工工序
- 食品工程原理实验教学大纲
- 教学设计 《分数的基本性质》教学设计 全国公开课一等奖
- 骨盆与髋臼骨折
- 江苏码头工程防洪影响评价报告
- CommVault备份及恢复优势
评论
0/150
提交评论