您的位置:首页 > 文旅 > 美景 > app手机软件开发公司_网站推广的定义_十大经典营销案例_网站seo技术教程

app手机软件开发公司_网站推广的定义_十大经典营销案例_网站seo技术教程

2025/7/13 5:15:14 来源:https://blog.csdn.net/lin85253788/article/details/144396268  浏览:    关键词:app手机软件开发公司_网站推广的定义_十大经典营销案例_网站seo技术教程
app手机软件开发公司_网站推广的定义_十大经典营销案例_网站seo技术教程

1.模块介绍

温室效应、废气排放、冰川融化、岛国淹没,这一切的罪魁祸首就是 CO2 的过度排放。是时
候家中常备一款 CO2 监测装置,来知道我们的环境危机是多么的紧迫。它还可以告诉你室内空气
的质量,及时开窗降低 CO2 浓度。康威科技为您带来这款 CO2 传感器模块。可通过 AT 指令轻松
读取 CO2 TVOC 数值,并且本模块还有两种不同的门限模式可供选择。
该模块包含一个 SGP30 气体传感器和一个 SHT20 温湿度传感器,可测量总 VOC 信号
(TVOC) CO2 等效信号 (CO2eq) 、温度及湿度。

二.接线 

 三.AT指令手册

 四.uarst

uint8_t buffer[BUFFER_SIZE];
uint16_t _buffindex = 0;
u8 flag61=0;
uint16_t sum=0;
uint16_t cheng=1;
void USART3_IRQHandler(void)
{if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET) //接收中断{ uint8_t rx_byte = USART_ReceiveData(USART3);  // 读取接收到的数据u8 i=0;// 将接收到的字节添加到缓冲区if (_buffindex < BUFFER_SIZE - 1&&flag61==1) {buffer[_buffindex++] = rx_byte;}// 检查玩接受字节if (rx_byte == 13) {// 重置接收缓冲区索引_buffindex = 0;flag61=0;//开始循环处理数据}if(rx_byte=='='){flag61=1;}USART_ClearFlag(USART3, USART_FLAG_RXNE);}
};void USART3_Init(unsigned int baud)   
{  USART_InitTypeDef USART_InitStructure;  NVIC_InitTypeDef NVIC_InitStructure;   GPIO_InitTypeDef GPIO_InitStructure;    //声明一个结构体变量,用来初始化GPIO  //使能串口的RCC时钟  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE); //使能UART3所在GPIOB的时钟  RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);  //串口使用的GPIO口配置  // Configure USART3 Tx (PB.10) as alternate function push-pull  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;  GPIO_Init(GPIOB, &GPIO_InitStructure); // Configure USART3 Rx (PB.11) as input floating    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;  GPIO_Init(GPIOB, &GPIO_InitStructure);   //串口中断配置  //Configure the NVIC Preemption Priority Bits     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  // Enable the USART3 Interrupt   NVIC_InitStructure.NVIC_IRQChannel = USART3_IRQn;   NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//抢占优先级3NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2;        //子优先级3NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;  NVIC_Init(&NVIC_InitStructure);  //配置串口  USART_InitStructure.USART_BaudRate = baud;  USART_InitStructure.USART_WordLength = USART_WordLength_8b;  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;  // Configure USART3   USART_Init(USART3, &USART_InitStructure);//配置串口3 // Enable USART3 Receive interrupts 使能串口接收中断  USART_ITConfig(USART3, USART_IT_RXNE, ENABLE);  // Enable the USART3   USART_Cmd(USART3, ENABLE);//使能串口3       }

5.主函数 

 //TOVC AT指令void TOVC(){
//	 AT+TVOC\r\n 查询总挥发性有机化合物浓度Usart_SendString2(USART3,"AT+TVOC\r\n");delay_ms(10);}//解析tovc数据组装u8 i=0;u8 endindex=0;u16 TOVCSUM=0;extern uint8_t buffer[BUFFER_SIZE];void getend(){//判断有效位个数for(i=1;i<=5;i++){if(buffer[i]==13){endindex=i;break;}}//循环数据TOVCSUM=(buffer[0]-'0')*10+buffer[1]-'0';		//清空临时变量TOVCSUM=0;for(i=0;i<endindex;i++){TOVCSUM=TOVCSUM*10+(buffer[i]-'0');}}

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com