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

做全景的h5网站互联网广告行业分析

做全景的h5网站,互联网广告行业分析,wordpress 多文件上传,建设工程监理 精品课网站目录 一、介绍 二、传感器原理 1.原理图 2.引脚描述 三、程序设计 main文件 usart3.h文件 usart3.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 JW01三合一检测模块是一种用于检测空气中二氧化碳浓度的传感器模块。它可以广泛应用于室内空气质量检测、智能家…

目录

一、介绍

二、传感器原理

1.原理图

2.引脚描述

三、程序设计

main文件

usart3.h文件

usart3.c文件

四、实验效果 

五、资料获取

项目分享


一、介绍

        JW01三合一检测模块是一种用于检测空气中二氧化碳浓度的传感器模块。它可以广泛应用于室内空气质量检测、智能家居、温室气体监测等领域。模块采用非分散红外(NDIR)技术进行测量,可以测量空气中的CO2浓度范围从350到2000ppm,具有高精度和快速响应的特点。模块采用串口通信方式,可以与单片机或其他设备进行通信。

以下是三合一VOC甲醛传感器的参数:

型号

JW01-V2.2

工作电压

 5.0±0.2VDC

工作电流

80mA

量程

 总有机挥发物(TVOC):0-2.00mg/m3

二氧化碳(CO2):350-2000ppm

甲醛(HCHO):0-1.00mg/m3

工作温度

-10~40

探测气体

CO2VOCCH2O

预热时间

60s

哔哩哔哩视频链接:

JW01三合一传感器(甲醛模块 STM32)

(资料分享见文末) 

二、传感器原理

1.原理图

2.引脚描述

三、程序设计

1.使用STM32F103C8T6读取JW01三合一传感器采集的甲醛数据,通过串口发送至电脑

2.将读取得到信息数据同时在OLED上显示

JW01_A

PB10

JW01_B

PB11

OLED_SCL

PB1

OLED_SDA

PB0

串口

串口1

main文件

#include "stm32f10x.h"
#include "led.h"
#include "usart.h"
#include "delay.h"
#include "oled.h"
#include "usart3.h"/*****************辰哥单片机设计******************STM32* 项目			:	JW01三合一传感器实验                     * 版本			: V1.0* 日期			: 2025.2.4* MCU			:	STM32F103C8T6* 接口			:	参看usart3.h							* BILIBILI	:	辰哥单片机设计* CSDN			:	辰哥单片机设计* 作者			:	辰哥 **********************BEGIN***********************/float CH20;
u8 buff[30];int main(void)
{ SystemInit();//配置系统时钟为72M	delay_init(72);LED_Init();LED_On();USART1_Config();USART3_Config();OLED_Init();printf("Start \n");delay_ms(1000);//显示“甲醛浓度:”OLED_ShowChinese(0,0,0,16,1);OLED_ShowChinese(16,0,1,16,1);OLED_ShowChinese(32,0,2,16,1);OLED_ShowChinese(48,0,3,16,1);OLED_ShowChar(64,0,':',16,1);while (1){LED_Toggle();CH20 = Get_CH2O();sprintf((char*)buff,"%.3fppm  ",CH20);
//		printf("甲醛浓度: %.3fppm\r\n",CH20);OLED_ShowString(40,30,buff,16,1);delay_ms(500);}
}

usart3.h文件

#ifndef __USART3_H
#define __USART3_H#include "stm32f10x.h"                  // Device header
#include "oled.h"
#include "usart.h"/*****************辰哥单片机设计******************STM32* 项目			:	JW01三合一传感器实验                     * 版本			: V1.0* 日期			: 2025.2.4* MCU			:	STM32F103C8T6* 接口			:	参串口3						* BILIBILI	:	辰哥单片机设计* CSDN			:	辰哥单片机设计* 作者			:	辰哥 **********************BEGIN***********************/#define USART3_RXBUFF_SIZE   54 void USART3_Config(void);
uint8_t Usart3_GetRxFlag(void);
float Get_CH2O(void);#endif

usart3.c文件

#include "usart3.h"	
#include <stdbool.h>/*****************辰哥单片机设计******************STM32* 项目			:	JW01三合一传感器实验                     * 版本			: V1.0* 日期			: 2025.2.4* MCU			:	STM32F103C8T6* 接口			:	串口3						* BILIBILI	:	辰哥单片机设计* CSDN			:	辰哥单片机设计* 作者			:	辰哥 **********************BEGIN***********************/unsigned char Usart3RecBuf[USART3_RXBUFF_SIZE];//串口2接收数据缓存
unsigned int  Rx3Counter = 0;   //串口2收到数据标志位
bool rev_start  = 0;     //接收开始标志
bool rev_stop   = 0;     //接收停止标志void USART3_Config(void){//GPIO端口设置GPIO_InitTypeDef GPIO_InitStructure;USART_InitTypeDef USART_InitStructure;NVIC_InitTypeDef NVIC_InitStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);	//使能USART3,GPIOA时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);	//使能GPIOB时钟//USART3_TX   GPIOB.10GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; //PB10GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;	//复用推挽输出GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化GPIOB.10//USART3_RX	  GPIOB.11初始化GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;//PB11GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化GPIOB.11  //Usart3 NVIC 配置NVIC_InitStructure.NVIC_IRQChannel = USART3_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0 ;//抢占优先级NVIC_InitStructure.NVIC_IRQChannelSubPriority = 4;		//子优先级4NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;			//IRQ通道使能NVIC_Init(&NVIC_InitStructure);	//根据指定的参数初始化VIC寄存器//USART 初始化设置USART_InitStructure.USART_BaudRate = 9600;//串口波特率USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字长为8位数据格式USART_InitStructure.USART_StopBits = USART_StopBits_1;//一个停止位USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;	//收发模式USART_Init(USART3, &USART_InitStructure); //初始化串口3USART_ITConfig(USART3, USART_IT_RXNE, ENABLE);//开启串口接受中断USART_Cmd(USART3, ENABLE);                    //使能串口3 }void USART3_IRQHandler(void)                	//串口3中断服务程序
{uint8_t Res;if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)  //接收中断(接收到的数据必须是0x0d 0x0a结尾){Res = USART_ReceiveData(USART3);//接收模块的数据if ((Res == 0x2C)&&(rev_stop==0))  //如果收到0x2C,便开始接收{rev_start = 1;}if (rev_start == 1)  //标志位为1,开始接收{Usart3RecBuf[Rx3Counter] = Res;  //字符存到数组中Rx3Counter ++;if (Rx3Counter >= 9) 	         //一帧数据接收完成{rev_start = 0;rev_stop  = 1;Rx3Counter = 0;}}}USART_ClearITPendingBit(USART3, USART_IT_RXNE);
} float Get_CH2O(void)  //获取甲醛
{char i = 0;u16 sum1=0;u8  sum2=0;float ch20 = 0;if(rev_stop == 1)                   //数据接收完成了{for(i = 0; i < 8; i++){sum1 += Usart3RecBuf[i];   //累加和}sum2=(unsigned char)sum1;if(sum2 == Usart3RecBuf[8])  //校验数据是否正确: 校验和(B8)=unit_8(B0+B1+B2+B3+B4+B5+B6+B7){ch20 = (Usart3RecBuf[4]*256 + Usart3RecBuf[5]); //计算甲醛值 }rev_stop = 0;}return ch20/1000;
}

四、实验效果 

五、资料获取

项目分享

http://www.dtcms.com/wzjs/176906.html

相关文章:

  • 自己做的图片哪个网站可以出售百度推广培训
  • nas做网站要哪些东东短视频关键词seo优化
  • 网站根目录怎么找热点事件
  • 维恩图在线制作网站巢湖网站制作
  • 美国网站备案查询网址谷歌seo工具
  • ui做自适应网站seo关键词外包公司
  • 济南seo网站优化关键词优化公司如何选择
  • 监控做直播网站宣传网站站点最有效的方式是
  • 100人公司局域网搭建广州灰色优化网络公司
  • 汕头网站建设公司seo简介
  • 前端开发软件有哪些北京seo关键词优化收费
  • wordpress 文章内容页谷歌seo需要做什么的
  • 攀枝花住房和城乡建设厅官方网站策划是做什么的
  • 怎么做淘宝客优惠劵网站如何推广软件
  • 濮阳市网站怎么做宣传网站搜索引擎优化的基本内容
  • php网站后台登陆不上网络广告文案
  • 在征婚网站上认识做期货展示型网站有哪些
  • 扫码支付做进商城网站南宁seo外包服务
  • 旅游网站设计与实现开题报告百度个人中心登录
  • 网站开发前端和后端工作全面落实疫情防控优化措施
  • 安卓做视频网站好如何让自己的网站快速被百度收录
  • 泉州网站建设案例长春网站制作计划
  • 大丰网站建设网络营销服务的特点有哪些
  • 专业的网站优化公司排名优化设计答案五年级下册
  • 餐饮装修专业设计seo网站系统
  • 小购物网站建设seo课程排行榜
  • 点击图片是网站怎么做企业培训心得
  • 塘沽网站建设优化seo排名赚app官网
  • 网站怎么做404 301搜索引擎seo是什么
  • 备案网站名称攻略免费建立网站步骤