62-基于stm32单片机天然气温湿度检测自动排气Proteus仿真源程序、讲解视频

本文介绍了基于STM32单片机的项目,使用ADC和DHT11传感器监测天然气浓度和温湿度,当条件触发时蜂鸣器报警并启动风扇排气。程序带有中文注释,适合新手学习,附带Proteus仿真及全套资料下载链接。

功能介绍:采用stm32单片机作为控制CPU,采用ADC采集天然气浓度,仿真中使用电位器调节天然气浓度,采用DHT11传感器采集温湿度,当天然气浓度或者温度大于一定值时,蜂鸣器报警,并且风扇打开进行排气,LCD1602显示屏显示相关数据,程序采用keil5编写,仿真使用Proteus8.9,并且程序有中文注释,新手容易看懂,文末有资料分享:

下面是仿真演示视频和相关仿真图片

62-基于stm32单片机天然气温湿度检测自动排气Proteus仿真(程序+仿真+全套资料)

下面是程序部分展示(程序有中文注释,新手容易看懂)

程序部分展示:/******************************************************************************** Function Name :  DHT11_Read* Description : 读取温湿度* Input : None* Output : None* Return : None*******************************************************************************/int DHT11_ReadData(void){  unsigned int cout = 1;  unsigned int T_H, T_L, H_H, H_L, Check;
  //设置为IO口输出模式  DHT_Set_Output();  DHT_W_DATA=1;  //1、MCU开始起始信号  DHT_ResetBit();  delay_ms(18);    //拉低至少18ms  DHT_SetBit();      //delay_us(20);    //拉高20~40us    //设置为IO口输入模式  DHT_Set_Input();    //2、读取DH21响应  if(DHT_ReadBit() == Bit_RESET)  {    //等待80us的高电平    cout = 1;    while(DHT_ReadBit() && cout++);        //等待80us的低电平    cout = 1;    while(!DHT_ReadBit() && cout++);    delay_us(54);        //读取8bit的湿度整数数据    H_H = DH21_ReadByte();        //读取8bit的湿度小数数据    H_L = DH21_ReadByte();        //读取8bit的温度整数数据    T_H = DH21_ReadByte();        //读取8bit的温度小数数据    T_L = DH21_ReadByte();        //读取8bit的校验和    Check = DH21_ReadByte();        if(Check == (H_H + H_L + T_H + T_L))    {      DHT11.Hum_H = H_H;      DHT11.Hum_L = H_L;      DHT11.Tem_H = T_H;      DHT11.Tem_L = T_L;        return 1;    }    else    {      return 0;    }  }  return 0;}

/**  * @brief  获取温度  * @param  none.  * @retval Temp, 温度值  */int DHT11_GetTem(void){  return (DHT11.Tem_H << 8 | DHT11.Tem_L);}
/**  * @brief  获取湿度  * @param  none.  * @retval Hum,湿度值  */int DHT11_GetHum(void){  return (DHT11.Hum_H << 8 | DHT11.Hum_L);}

程序打开办法:特别注意:下载资料包以后一定要先解压!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。

下面是资料包里面包含的相关文件展示

百度云盘资料下载链接

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值