shineblink TCS34725传感器测量颜色,色温以及光强度

一、本例程实现功能

通过TSC34725颜色传感器模块测量颜色(RGB值)、色温、以及光照强度,并通过print()函数在电脑串口调试终端打印输出。

二、基本概念

RGB值: RGB即是代表红、绿、蓝三个通道的颜色 ,人类肉眼所感知的所有颜色都可以通过这三种颜色的不同组合所表现,例如 256级的RGB色彩总共能组合出约1678万种色彩,即256×256×256=16777216。通常也被简称为1600万色或千万色 。

色温: 色温是表示光线中包含颜色成分的一个计量单位, 色温的单位是“K”(开尔文 )。通俗点讲 颜色越红,色温越低,颜色越蓝,色温越高。 Core的库函数会自动帮用户计算好色温并输出结果,算法参考此处

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

三、 传感器参数配置描述

TCS34725颜色传感器的配置参数包含Integration Time和Gain:

Integration Time:可以理解为每次测量的采样时间,该时间越长转换的结果准确性越高
Gain:可以理解传感器采样前端的放大器增益),该增益越大灵敏性越高(越适合弱色)
这两个参数我们可以在LIB_TCS3472Config()函数中结合您的需求进行任意配置。

四、接线图

在这里插入图片描述

六、完整代码

--配置USB以虚拟串口模式工作,这样调用print()函数就会在电脑串口终端打印输出
LIB_UsbConfig("CDC")
--配置TCS3472颜色传感器开始工作,采样时间为最长的700ms(准确度最高),采样放大器增益为1(无增益)
--如果您想提搞测量速度,可以将"700ms"替换成"2.4ms","24ms","50ms","101ms","154ms"中的任意一个
LIB_TCS3472Config("IIC0","700ms","GAIN_1X")
--开始大循环
while(GC(1) == true)
do
    --查询传感器是否出数
    flag, r ,g, b, cct, lux = LIB_TCS3472GetResult()
    if flag == 1 then
        --打印r g b三色值的整数部分,以及色温(cct)和光照强度(lux)
        print(string.format("r:%.0f, g:%.0f, b:%.0f, cct:%d, lux:%d", r, g, b, cct, lux))
    end
end

七、代码运行结果

电脑串口调试终端上显示的RGB色值、色温(cct)、光照强度(lux)内容如下图:
在这里插入图片描述
更多详情请参看 shineblink.com官网链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值