跳到主要内容

APDS-9960靠近感应及光照强度

一、本例程实现功能

  • 通过APDS-9960传感器模块感应物体的靠近并输出感应数值(0-255)用于量化靠近的程度

  • 通过APDS-9960传感器模块检测环境光强度并输出光照强度(lux)

  • 将上面的两种测量数据通过< print() 函数在电脑串口调试终端打印输出

二、基本概念

光照强度: 光照强度是一种物理术语,指单位面积上所接受可见光的光通量。简称照度 [1] ,单位勒克斯(Lux或lx)。用于指示光照的强弱和物体表面积被照明程度的量。

三、 传感器应用限制说明

该传感器的靠近感应功能支持大概10厘米范围,超出10厘米范围后感应数值都为0。

四、接线图

layout

五、材料清单

名称推荐购买链接(或者您可以自己制作)模块/芯片硬件资料下载
APDS-9960传感器模块APDS-9960传感器模块购买链接下载地址
声明:这里推荐的购买链接仅供参考,您完全可以去其他商家或渠道购买,只要功能相似即可,如果需要更低的成本建议自己开发硬件模块或定制。

product

六、完整代码

--配置USB以虚拟串口模式工作,波特率115200,这样print()就可以在PC串口调试终端上输出了
LIB_UsbConfig("CDC")
--配置APDS9960开始测量靠近感值和光照度值,占用core的IIC0引脚
LIB_ApdsConfig("IIC0", "PorximityAndLux")
--开始大循环
while(GC(1) == true)
do
--查询传感器是否出数
LIB_DelayMs(100)
flag, prxm, lux = LIB_ApdsGetPrxmAndLux()
if flag == 1 then
--打印靠近感应值和环境光强度(lux)
print(string.format("prmx:%d, lux:%d", prxm, lux))
end
end
如果感兴趣,上面代码中出现的LIB开头的库函数可以在 API文档 中通过Ctrl+F查询。

七、代码运行结果

电脑串口调试终端上显示靠近感应值、光照强度(lux)内容如下图:

result