目前市场上的大多数空气净化器的传感器采用烟尘传感器,例如夏普的GP2Y1010AU, 该传感器能够检测出大于0.8um直径的灰尘,因为我们现在空气中的主要污染物为PM2.5,所以通过一定的算法能够大致让其表示出当前的空气质量指数。下图为CC2540最小系统与GP2Y1010AU组合起来的PM2.5检测仪,房间里计算出来的空气质量指数似乎比官方通报的差一级。
下面是GPY1010AU的采样电路与采样方式,该传感器通过光探测灰尘浓度,需要MCU一个PIN脚产生低脉冲,然后在低脉冲0.32ms的位置进行ADC的转换。
下图为该传感器的外围设计电路,也就是上图中转接板的电路
通过一个三极管控制第3个引脚产生低脉冲,将第5引脚输出的烟尘数据通过R14,R15进行分压以适应MCU ADC的参考电压。
下面是GPY1010AU在CC2540裸机上的核心代码
#include<ioCC2540.h>
#include<stdio.h>
#include "gp2y1010au.h"
int dustPin=0;
int ledPower=2;
int delayTime=10