资讯详情

鸿蒙之检测烟雾

检测鸿蒙烟雾(MQ_2传感器)

  • 介绍
    • 鸿蒙
    • MQ-2烟雾传感器
    • I2C
  • 具体设计
    • 关键代码
  • 后续

介绍

鸿蒙

HarmonyOS是面向万物互联时代的全新分布式操作系统。

在传统单设备系统能力的基础上,HarmonyOS提出了基于同一系统能力、适应各种终端形式的分布式概念,可支持手机、平板电脑、智能可穿戴、智能屏幕、汽车、机器等终端设备,提供全场景(移动办公、体育健康、社交、媒体娱乐等)的业务能力。

  1. 配备操作系统的设备集成到系统层面,形成超级终端,使设备的硬件能力灵活扩展,实现设备之间的硬件互助和资源共享。 对消费者而言,HarmonyOS能够整合生活场景中各种终端的能力,实现不同终端设备之间的快速连接、能力互助和资源共享,匹配合适的设备,提供流畅的全场景体验。

  2. 面向开发者,实现一次开发和多端部署。 对应用开发者而言,HarmonyOS采用多种分布式技术,使应用开发与不同终端设备的形式差异无关,使开发者能够专注于上层业务逻辑,更方便、更高效地开发应用。

  3. 一套操作系统可以满足不同能力的设备需求,实现统一OS,弹性部署。 对设备开发者而言,HarmonyOS根据设备的资源能力和业务特设备的资源能力和业务特点灵活切割,满足不同形式的终端设备对操作系统的要求。

MQ-2烟雾传感器

MQ-2常用于家庭和工厂的气体泄漏监测装置,适用于检测液化气、苯、烷、酒精、氢气、烟雾等。MQ-准确地说,它是一种多种气体探测器。

MQ-探测范围极其广泛。其优点:灵敏度高,响应快,稳定性好,使用寿命长,驱动电路简单。

I2C

IC( Inter-- Integrated Circuit)总线是一种由 PHILIPS连接微控制器及其外围设备的公司开发的两线串行总线。它由数据线组成SDA和时钟SCL串行总线可以发送和接收数据。 在CPU与被控I2C之间、I2C与I2C双向传输,高速IC总线一般可达400kbps以上。 I2C在传输数据的过程中,总线有三种信号:开始信号、结束信号和响应信号。 开始信号:SCL高电平时,SDA数据从高电平跳转到低电平跳转。 结束信号:SCL高电平时,SDA数据从低电平跳转到高电平,数据从结东传输。 响应信号:接收数据IC在接收到8bit数据发送到数据后IC发出特定的低电平脉冲表示已收到数据。CPU向受控单位发出信号后,等待受控单位发出响应信号,CPU接收响应信号后,根据实际情况判断是否继续传输信号。未收到响应信号的,判断为 受控单元出现故障。 在这些信号中,起始信号是必要的,不需要结束信号和响应信号。

具体设计

遇到可燃气体时,可燃气体传感器的电阻值会降低,气体浓度越大,电阻值越小。ADC通道的电压会通过收集增加ADC计算传感器的电阻值。

关键代码

static void AdcGpioTask(void *arg){ 
             (void)arg;     hi_gpio_init();     hi_io_set_func(HI_GPIO_IDX_11, HI_IO_FUNC_GPIO_11_GPIO);     hi_gpio_set_dir(HI_GPIO_IDX_11, HI_GPIO_DIR_IN);     hi_u16 value;     int num=5;     while (num>0)     { 
        num--;         if(hi_adc_read(HI_ADC_CHANNEL_5, &value, HI_ADC_EQU_MODEL_4, HI_ADC_CUR_BAIS_DEFAULT, 0) != HI_ERR_SUCCESS){ 
                     printf("ADC read error!\n");         }else{
     
            printf("ADC Voltage = %f\n", hi_adc_convert_to_voltage(value));
            printf("MQ2 value = %f\n", 5 / hi_adc_convert_to_voltage(value)-1); 
            usleep(10000);
        }
    }
}


后续

完整源码,可以关注我的程序设计专栏。 或者关注微信公众号,发送“鸿蒙之检测烟雾”获取。 在这里插入图片描述

编写不易,感谢支持。

标签: 电阻整合式气体传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台