【STM32单片机】防盗报警器设计

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用STM32F103C8T6单片机控制器,使用按键、动态数码管、蜂鸣器、指示灯、热释电人体红外传感器等。
主要功能:
系统运行后,默认处于布防状态,D1指示灯亮,数码管显示初始时间6点0分,
报警次数0,格式:06-00 00,其中间隔1S中数码管上‘-'闪烁一次,代替秒钟运行,当人体红外传感器感应到有人时,蜂鸣器报警,当人离开时,且蜂鸣器报警关闭,同时数码管上报警次数显示数增加。若处于报警时,人还未离开,可通过K1或K2任意键关闭声光报警,若按下K1键依然处于布防状态,若按下K2键则处于撤防状态。处于撤防状态时,D1指示灯灭。传感器即使感应到有人也不会发生声光报警。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*///布防/撤防控制
void defence_control(void)
{u8 key=0;static u8 cancel_alarm_flag=0;key=KEY_Scan(0);//无人时布防,且标志可用于屏蔽掉布防后,检测有人报警时,任意键取消报警if(sys_ctrl.man_flag==0){if(key==KEY1_PRESS)//布防	sys_ctrl.mode=0;else if(key==KEY2_PRESS)//撤防	sys_ctrl.mode=1;	}//布防监控if(sys_ctrl.mode==0){LED0=0;//布防指示灯亮//有人接近,感应器感应到信号if(sys_ctrl.man_flag==0){if(IRDOUT_PIN==1){delay_ms(100);//滤波,防止干扰物影响if(IRDOUT_PIN==1){sys_ctrl.man_flag=1;						}}		}else//检测到有人,LED闪烁,报警{if(cancel_alarm_flag==0){BEEP_Alarm(100,100);	}if(IRDOUT_PIN==0)//人离开{delay_ms(5);if(IRDOUT_PIN==0){sys_ctrl.man_flag=0;sys_ctrl.alarm_cnt++;if(sys_ctrl.alarm_cnt==100)sys_ctrl.alarm_cnt=0;cancel_alarm_flag=0;	}	}else//人未离开,可按任意键取消声光报警{if(key!=0){cancel_alarm_flag=1;if(key==KEY1_PRESS)//布防	sys_ctrl.mode=0;else if(key==KEY2_PRESS)//撤防{sys_ctrl.mode=1;sys_ctrl.alarm_cnt++;if(sys_ctrl.alarm_cnt==100)sys_ctrl.alarm_cnt=0;	}				}			}	}	}else//布防监控关闭{LED0=1;//布防指示灯灭sys_ctrl.man_flag=0;cancel_alarm_flag=0;	}			
}//应用控制系统
void app_sys_ctrl_demo(void)
{LED_Init();USART1_Init(115200);KEY_Init();BEEP_Init();SMG_Init();ctrl_pin_init();TIM3_Init(20,36000-1);  //定时10msTIM_Cmd(TIM3,ENABLE); //打开定时器	sys_ctrl.hour=6;sys_ctrl.min=0;while(1){defence_control();//布防/撤防控制show_time_alarm_cnt();//显示时间和报警次数}
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619

在这里插入图片描述


联系作者

专注于51单片机、STM32、国产32、DSP、Proteus、ardunio、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/155077.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web3 新手攻略:9 个不可或缺的 APP 助力你踏入加密领域

Web3世界充满了无限机遇,但要掌握它,您需要合适的工具���。今天,我将为您介绍9款Web3必备APP,涵盖钱包、DEX、和工具三大类别。而且,我要特别强烈推荐一个强大的钱包——Bitget Wall…

CAN 通信-底层

本文主要以rockchip的rk3568平台基础,介绍can 控制器、硬件电路和底层驱动。 rk3568 CAN 控制器 概览 CAN(控制器区域网络)总线是一种稳健的车载总线标准,它允许微控制器和设备在没有主机计算机的应用中相互通信。它是一个基于消息的协议,最初是为了在汽车中多路…

网工内推 | 实施工程师,有软考证书优先,上市公司,最高14薪

01 新点软件 招聘岗位:实施工程师 职责描述: 1、负责一线项目组对接,完成项目前期信息、需求收集; 2、负责需求验证、管控、上线专项跟进工作; 3、负责在推进过程中总结与沉淀,提升优化对接规范/效率&…

蓝桥杯每日一题2023.10.11

子串分值和 - 蓝桥云课 (lanqiao.cn) 题目描述 题目分析 以下为50分方法(暴力枚举) 第一层循环枚举其长度,第二层循环枚举其左端点,k代表右端点,(将每一种子串一一枚举出来)算出从左端点到右…

mysql面试题29:大表查询的优化方案

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:说一下大表查询的优化方案 以下是几种常见的大表优化方案: 分区&…

引领创新浪潮:“Polygon探寻新技术、新治理、新代币的未来之路!“

熊市是用来建设的,Polygon Labs一直在利用这漫长的几个月来做到这一点。 Polygon 是最常用的区块链之一,每周约有 150 万用户,每天超过 230 万笔交易,以及数千个 DApp,Polygon 最近面临着日益激烈的竞争。虽然从交易数…

3D包容盒子

原理简述 包围体(包容盒)是一个简单的几何空间,里面包含着复杂形状的物体。为物体添加包围体的目的是快速的进行碰撞检测或者进行精确的碰撞检测之前进行过滤(即当包围体碰撞,才进行精确碰撞检测和处理)。包…

为什么说CDN是网站速度优化大师

CDN(内容分发网络)是一个强大的工具,可以帮助您的网站实现飞一般的加载速度。本文将引领您深入了解CDN的奇妙世界,揭示其强大功能,并提供关于如何充分利用CDN服务来提升网站性能的宝贵建议。 探索CDN的世界 CDN&#x…

主从Reactor高并发服务器

文章目录 Reactor模型的典型分类单Reactor单线程单Reactor多线程多Reactor多线程本项目中实现的主从Reactor One Thread One Loop各模型的优点与缺点 项目分解Reactor服务器模块BufferSocketChannelEpollerTimerWheelEventLoopAnyConnectionAcceptorLoopThreadLoopThreadPoolTc…

根据前序遍历结果构造二叉搜索树

根据前序遍历结果构造二叉搜索树-力扣 1008 题 题目说明: 1.preorder 长度>1 2.preorder 没有重复值 直接插入 解题思路: 数组索引[0]的位置为根节点,与根节点开始比较,比根节点小的就往左边插,比根节点大的就往右…

AI如何帮助Salesforce从业者找工作?

在当今竞争激烈的就业市场中,找到满意的工作是一项艰巨的任务。成千上万的候选人竞争一个岗位,你需要利用一切优势从求职大军中脱颖而出。 这就是AI的用武之地,特别是像ChatGPT这样的人工智能工具,可以成为你的秘密武器。本篇文章…

知识图谱系列4:neo4j学习

这是一篇还不错的教程,我将会针对其中的Cypher语法在这篇帖子内提出问题,以便学习与复习。 MATCH是什么操作? 小括号()代表什么?(n)代表什么? MATCH (n) DETACH DELETE n是什么含义&#xff1…

使用poi-tl循环导出word报表

先看模板和导出的效果 模板 效果 根据模板循环生成表格,每个表格再循环填充数据,也就是两层循环,第一层循环是学生学期信息,第二层循环是学生的成绩数据。 第一个循环 {{?listTable}} {{/}}第二个循环 {{reportList}} 表格…

【深度学习实验】循环神经网络(二):使用循环神经网络(RNN)模型进行序列数据的预测

目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. RNN模型 a. 初始化__init__ b. 前向传播方法forward 2. 训练和预测 a. 超参数 b. 创建模型实例 c. 模型训练 d. 预测结果可视化 3. 代码整合 经验是智慧之父…

磁盘满了对日志打印(Logback)的影响

背景 我们生产环境有一个服务半夜报警:磁盘剩余空间不足10%,请及时处理。排查后发现是新上线的一个功能,日志打太多导致的,解决方法有很多,就不赘述了。领导担心报警不及时、或者报警遗漏,担心磁盘满了对线…

【Monorepo实战】pnpm+turbo+vitepress构建公共组件库文档系统

Monorepo架构可以把多个独立的系统放到一起联调,本文记录基于pnpm > workspace功能,如何构建将vitepress和组件库进行联调,并且使用turbo进行任务顺序编排。 技术栈清单: pnpm 、vitepress 、turbo 一、需求分析 1、最终目标…

“高级Vue状态管理 - Vuex的魅力与应用“

目录 引言1. Vuex的简介1.1 什么是Vuex?1.2 Vuex的核心概念 2. Vuex的值获取与改变(综合案例)3. Vuex的异步请求总结 引言 在现代Web开发中,前端应用变得越来越复杂。随着应用规模的扩大和数据流的复杂性增加,有效地管理应用的状态成为了一项…

澳大利亚教育部宣布ChatGPT将被允许在澳学校使用!

教育部长最近宣布,从 2024 年起,包括 ChatGPT 在内的人工智能将被允许在所有澳大利亚学校使用。 (图片来源:卫报) 而早些时候,澳洲各高校就已经在寻找与Chatgpt之间的平衡了。 之前,悉尼大学就…

【例题】逆波兰表达式求值(图解+代码)

【例题】逆波兰表达式求值(图解代码) 这里写目录标题 【例题】逆波兰表达式求值(图解代码)逆波兰表达式解释优点转换计算代码 题目描述 : 逆波兰表示法是一种将运算符(operator)写在操作数(operand)后面的描述程序(算式…

java过滤非中英文的特殊字符,四字节表情字符

过滤非中英文的特殊字符 /*** 过滤特殊字符* param str str* return String*/ public static String filterStr(String str) {if (StringUtils.isBlank(str)) {return str;}String regEx "[~!#$%^&*()|{}:;,\\[\\].<>/?~&#xff01;#&#xffe5;%……&…