当前位置: 首页 > news >正文

STM32项目分享:基于物联网的灭火器智能监测系统

“我们不做一锤子买卖,只做技术成长的长期伙伴!”

目录

一、视频展示

二、项目简介

三、原理图设计

四、PCB硬件设计

五、程序设计

六、资料分享


一、视频展示

基于物联网的灭火器智能监测系统 -视频分享

二、项目简介

题目:基于物联网的灭火器智能监测系统
主控:STM32F103C8T6
显示:oled显示
传感器:
气压传感器
GPS模块
DS18B20温度传感器
esp8266连接阿里云
声光报警:蜂鸣器+LED
三按键
DC供电
功能:
1、屏幕实时显示当前气压,温度。
2、可按键设置最低气压阈值,最高温度。
3、手机云智能app可查看当前数据。
4、当灭火器气压低,或者温度高于阈值,开启声光报警,手机端有文字提示。
5、单片机显示当前经纬度信息。
6、显示固定生产日期

三、原理图设计

四、PCB硬件设计

五、程序设计

#include "stm32f10x.h"                  // Device header
#include "delay.h"
#include "lcd.h"
#include "GPS.h"	
#include "usart.h"
#include "IOput.h"
#include "pwm.h"
#include "timer.h"
#include "adc.h"
#include "ds18b20.h"extern u8 receiving_flag; // 新增一个标志,用于标记是否开始接收数组
extern u16 buf[20],res;
u8 f,max_wd=30,dec_qy=10,ERROR_FLAG;u8 light=10,show_flag,light_dec=40,time,open_flag;
float yali;u8 count,vt=5;
int main (void)
{delay_init();NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);Usart2_Init(9600);OLED_Init();delay_ms(1);OLED_Clear();Usart1_Init(9600);output_init();input_init();TIM_PWM_Init(71,9999);TIM2_Int_Init(71,9999);Adc_Init();DS18B20_Init();while(1){temp_get();count++;if(time_count>=100){time_count=0;if(time!=0)time--;if(time==0)time=0;}yali=Get_ADC_Voltage_Average(1,10)*10*12;key_scan();if(key1_flag==1){OLED_Clear();key1_flag = 0;show_flag++;if(show_flag >= 4){show_flag = 0;}}if(show_flag==0){OLED_ShowCH(0, 0, " 灭火器监测系统 "); OLED_ShowCH(0, 2, "气压:");       OLED_Showdecimal(40, 2, yali, 2,2, 16);OLED_ShowCH(0, 4, "温度:");     OLED_ShowNum(40, 4, wd, 2, 16);    }if(show_flag==1){OLED_ShowCH(0, 0, "生产日期:");OLED_ShowCH(0, 2, "2024年5月20日");parseGpsBuffer();printGpsBuffer();}if(show_flag==2){OLED_ShowCH(0, 0, "    阈值修改    ");OLED_ShowCH(0, 2, "最大温度:");OLED_ShowNum(72, 4, max_wd, 2, 16); if(key2_flag==1){key2_flag=0;max_wd++;}if(key3_flag==1){key3_flag=0;max_wd--;}if(max_wd>=100 || max_wd<=0)max_wd=0;}if(show_flag==3){OLED_ShowCH(0, 0, "    阈值修改    ");OLED_ShowCH(0, 2, "最低气压:");OLED_ShowNum(72, 4, dec_qy, 2, 16);  if(key2_flag==1){key2_flag=0;dec_qy++;}if(key3_flag==1){key3_flag=0;dec_qy--;}if(dec_qy>=41 || dec_qy<=0)dec_qy=0;}if(wd>=max_wd || yali<=dec_qy){ERROR_FLAG=1;BEEP=0;}else{ERROR_FLAG=0;BEEP=1;}if(count>=30){count = 0;USART_SendData(USART1,'B');delay_ms(1);USART_SendData(USART1,'a');delay_ms(1);USART_SendData(USART1,yali);delay_ms(1);USART_SendData(USART1,'b');delay_ms(1);USART_SendData(USART1,wd);delay_ms(1);USART_SendData(USART1,'c');delay_ms(1);USART_SendData(USART1,ERROR_FLAG);delay_ms(1);USART_SendData(USART1,'E');delay_ms(1);}}
}

六、资料分享

点击即可查看当前资料分享。


文章转载自:

http://9MUr874y.ssgqc.cn
http://Dz7uHGQY.ssgqc.cn
http://52TBWksp.ssgqc.cn
http://x7ZEoip3.ssgqc.cn
http://46sD4wPd.ssgqc.cn
http://JliwVaYX.ssgqc.cn
http://v5VXoBfA.ssgqc.cn
http://1YjUARRe.ssgqc.cn
http://k1florTI.ssgqc.cn
http://ELhyaXIe.ssgqc.cn
http://q1vp3uPK.ssgqc.cn
http://eCZfSbpM.ssgqc.cn
http://OMtkRL5T.ssgqc.cn
http://xUzImyjO.ssgqc.cn
http://cJNAHcMS.ssgqc.cn
http://tIAgJzca.ssgqc.cn
http://DnhAcRpV.ssgqc.cn
http://g3Ipbw5n.ssgqc.cn
http://kG1FHCkc.ssgqc.cn
http://80MV40CR.ssgqc.cn
http://d75Ixbae.ssgqc.cn
http://lYoNRsKu.ssgqc.cn
http://WtI0ADLh.ssgqc.cn
http://EhDfYEWv.ssgqc.cn
http://HwZoK9uh.ssgqc.cn
http://q9IL2CAS.ssgqc.cn
http://7oG00POF.ssgqc.cn
http://ERgDEjeF.ssgqc.cn
http://nimBzQ7b.ssgqc.cn
http://RMurcaJX.ssgqc.cn
http://www.dtcms.com/a/382312.html

相关文章:

  • 嵌入式 Linux 启动机制全解析:从 Boot 到 Rootfs
  • 图神经网络分享系列-SDNE(Structural Deep Network Embedding) (三)
  • DDIM和DDPM之 间的区别与联系
  • dumpsys power 简介
  • NO.10:氖:霓虹灯
  • TA-VLA——将关节力矩感知融入VLA中:无需外部力传感器,即可完成汽车充电器插入
  • Ubuntu 系统中 Miniconda 虚拟环境(以 SGlang 为例)的备份与还原详细总结
  • Q2(门式)起重机司机实操考点有哪些?
  • leetcode58:最后一个单词的长度(尾指针逆向扫描,结合151反转字符串对比)
  • 链表运用到响应式中
  • 自动驾驶中的传感器技术46——Radar(7)
  • Windows_MediaFeaturePack_x64_1903_V1.msu
  • Class56 束搜索
  • 【Redis#10】渐进式遍历 | 数据库管理 | redis_cli | RES
  • Java面试问题记录(三)
  • 在Excel和WPS表格中批量删除数据区域的批注
  • 商品库存扣减方案
  • smartctl Current_Pending_Sector 硬盘待处理扇区
  • 并发和高并发
  • 科技信息差(9.13)
  • 文档长期不更新导致知识过时如何解决
  • Python学习-day9 字典Dictionary
  • Ubuntu22.04更换阿里镜像源,ubuntu更换源
  • 仓颉编程语言青少年基础教程:Struct(结构)类型
  • C语言数据结构实战:从零构建一个高性能的顺序栈
  • 数据链路层总结
  • Linux线程:基于环形队列的生产消费模型
  • 【Ambari监控】高版本 DataGrip 无法使用 Phoenix 驱动
  • 1.架构师——大纲
  • 粒子群算法模型深度解析与实战应用