基于 stm32F1 的GP2Y1010AU气体检测模块项目

编程入门 行业动态 更新时间:2024-10-28 16:24:16

基于 stm32F1 的GP2Y1010AU<a href=https://www.elefans.com/category/jswz/34/1761956.html style=气体检测模块项目"/>

基于 stm32F1 的GP2Y1010AU气体检测模块项目


本文同步发布于个人博客


项目地址

Maskbugzero/STM32-GP2Y1010AU

一个基于STM32的空气质量检测仪项目

硬件资源

  1. 战舰V3\精英STM32F103开发板
  2. GP2Y1010AU气体检测模块

实现功能

  • 室外粉尘颗粒数据获取及显示

连接方式

主要代码

int main(void)
{char str[] = "";u16 PM = 0; DHT11_Data_TypeDef DHT11_Data;delay_init();NVIC_Configuration();uart_init(115200);GP2Y_Adc_Init();  //ADC初始化     OLED_Init();OLED_ColorTurn(0);//0正常显示,1 反色显示OLED_DisplayTurn(0);//0正常显示 1 屏幕翻转显示OLED_Refresh();OLED_ShowString(2,2,"PM2.5:",16); OLED_ShowString(12,20,"TEM:",16); OLED_ShowString(12,38,"HUM:",16); OLED_ShowString(90,2,"ug/m3",12); //PM2.5单位 ug/m3OLED_ShowChinese(100,20,0,16); //温度单位 ℃OLED_ShowChar(100,38,'%',16);  //湿度单位 %while(1){/* 粉尘传感器获取数据*/PM = GetGP2YSingleValue();       //得到pm2.5值 if(PM < 10)sprintf(str, " %d ",PM);else if(PM < 100)sprintf(str, "%d ",PM);elsesprintf(str, "%d",PM);OLED_ShowString(60,2,(u8 *)str,16);/* 温湿度传感器获取数据*/if( Read_DHT11(&DHT11_Data)==SUCCESS){sprintf(str, "%d.%d ℃ ",DHT11_Data.temp_int,DHT11_Data.temp_deci);OLED_ShowString(60,20,(u8 *)str,16);sprintf(str, "%d.%d",DHT11_Data.humi_int,DHT11_Data.humi_deci);OLED_ShowString(60,38,(u8 *)str,16);}else{printf("Read DHT11 ERROR!\r\n");//读取数据失败,串口打印:Read DHT11 ERROR.}OLED_Refresh();delay_ms(1000);}
}

实验现象

更多推荐

基于 stm32F1 的GP2Y1010AU气体检测模块项目

本文发布于:2023-07-28 17:14:52,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1260082.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:气体   模块   项目   GP2Y1010AU

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!