尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【51单片机】【protues仿真】基于51单片机PM2.5温湿度测量蓝牙架构

【51单片机】【protues仿真】基于51单片机PM2.5温湿度测量蓝牙架构
📅 发布时间:2026/6/20 6:52:15

【51单片机】【protues仿真】基于51单片机PM2.5温湿度测量蓝牙架构

目录

一、关键功能

二、使用步骤

三、硬件资源

四、软件设计

五、实验现象

一、主要功能

1、LCD1602液晶显示温湿度和PM2.5值
2、按键设置阈值​
3、温湿度大于上限或低于下限蜂鸣器警报
4、M2.5大于上限声光警报
5、数据通过蓝牙发送到上位机
6、上位机控制LED点亮关闭

二、使用步骤

基于51单片机的PM2.5温湿度测量系统结合蓝牙功能,可通过无线传输搭建环境数据的远程监控。

三、硬件资源

1、51单片机核心模块
2、按键模块
3、DHT11温湿度传感器、PM2.5传感器模块
4、蜂鸣器模块
5、LED灯模块
6、LCD1602显示模块

四、软件设计


#include"LCD1602.h" //添加LCD1602头文件
#include"dht11.h" //添加DHT11头文件
#include"adc0832.h"
#include<math.h>
sbit BUZZER = P1^3; //蜂鸣器驱动端口==P1^3
sbit Reduc = P3^3;
sbit Add = P3^4;
sbit Mode = P3^2;
sbit LED1=P2^0;
sbit LED2=P2^1;
uchar Rx_buf[4],Rxnum=0;
uchar T1L=15,T1H=30,R1L=10,R1H=30;
uchar temp,humi; //保存温度,湿度

/************************************************
** 函数名称 : void main(void)
** 函数功能 : 主函数
** 输 入 : 无
** 输 出 : 无
** 说 明 :
************************************************/
void main(void)
{
double PM,pm1,pm2;
int count_delay=0;
int PMVAL=0,HPM=200,PM_count=0,pm1_count=0;
uchar T1_data=0,R1_data=0,T2_data=0,R2_data=0;//温度、湿度变量
uchar shezhi_flag=1,Mode_flag=1,n=1;//设置变量
uchar bueezr_flag=0,count=0,buzzer_time=9;//蜂鸣器报警变量
uint Mode_count=0;
uchar disp[16] ={"PM2.5:0000ug/m3 "};
uchar disp1[16]= {"T :00C RH:00%"};
uchar Tx_Buf[15];
InitUART(); //初始化串口
LCD_Init();
WriteChar(1,0,16,disp);
WriteChar(2,0,16,disp1);
while(1)
{

DHT11_receive(&temp,&humi);
T1_data=temp;
disp1[3]=T1_data/10+0x30;//十位
disp1[4]=T1_data%10+0x30;//个位

R1_data=humi;//湿度
disp1[13]=R1_data/10+0x30;//十位
disp1[14]=R1_data%10+0x30;//个位

pm1+=read_data(1);
if(++PM_count>=3)
{
PM_count=0;
pm1=pm1/3;
pm2+=pm1;
pm1=0;
if(++pm1_count>=5)
{
pm1_count=0;
PM=pm2/5;
PM=PM*50/255;
PM-=4;
PM/=5;
PM*=1000;
PMVAL=PM;
PMVAL+=235; PMVAL=PMVAL/9;
if(PMVAL>=9999)PMVAL=9999;
WriteCOMDATA(0x86,0);
if(PMVAL<0)//PMVAL=0;
{WriteCOMDATA(0+0x30,1);PMVAL=abs(PMVAL);}
else WriteCOMDATA(PMVAL/1000+0x30,1);
WriteCOMDATA(PMVAL/100%10+0x30,1);
WriteCOMDATA(PMVAL/10%10+0x30,1);
WriteCOMDATA(PMVAL%10+0x30,1);
PM=pm1=pm2=0;
}
}


/********LCD1602展示********/
//WriteChar(1,0,16,disp); //在第一行表现‘内容’
WriteChar(2,0,16,disp1); //在第二行显现‘内容’
if(Mode_flag==0){Mode_count++;if(Mode_count>20){Mode_count=0;Mode_flag=1;}}
if(++count_delay>=20)
{
count_delay=0;
Tx_Buf[0]='T'; //帧头
Tx_Buf[1]=T1_data/10%10+0x30; //将温湿度数据送往发送数组,送给蓝牙模块让手机APP显示
Tx_Buf[2]=T1_data%10+0x30;
Tx_Buf[3]=R1_data/10%10+0x30;
Tx_Buf[4]=R1_data%10+0x30;
Tx_Buf[5]=PMVAL/1000+0x30; //将温湿度数据送往发送数组,送给蓝牙模块让手机APP表现
Tx_Buf[6]=PMVAL/100%10+0x30;
Tx_Buf[7]=PMVAL/10%10+0x30;
Tx_Buf[8]=PMVAL%10+0x30;
Tx_Buf[9]=' ';//结束符
Tx_Buf[10]=' ';//结束符
Tx_Buf[11]=' ';//结束符
UART_send_string( Tx_Buf);
}
}
}



五、实验现象

演示视频:

相关新闻

  • 【炼石计划NOIP】第八套 赛后总结
  • vite7-webos网页版os管理|Vue3+Vite7+ArcoDesign搭建pc端os后台系统
  • python_Day22笔记

最新新闻

  • 猫抓插件:3步搞定浏览器资源嗅探的终极指南
  • MPC866双核通信处理器架构解析与嵌入式网络设备开发实战
  • 存储型XSS漏洞实战解析:从DVWA靶场到安全防御
  • SRC漏洞挖掘实战:从信息搜集到逻辑漏洞的完整攻防指南
  • 深入解析S12P SCI模块:寄存器操作、IrDA与LIN总线硬件支持
  • 基于等变VAE与扩散模型的MOF材料智能生成与优化实践

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号