TCS34725 RGB Color Sensor
|
|
|
|
|
|
产品概述
本模块是基于AMS的TCS3472XFN彩色光数字转换器为核心的颜色传感器,传感器提供红色、绿色、蓝色(RGB)和清晰光感应值的数字输出。集成红外阻挡滤光片可最大限度地减少入射光的红外光谱成分,并可精确地进行颜色测量。具有高灵敏度,宽动态范围和红外阻隔滤波器。最小化 IR 和 UV 光谱分量效应,以产生准确的颜色测量。并且带有环境光强检测和可屏蔽中断。通过 I2C 接口通信。
通信协议
I2C通信
- IIC通信共有两条控制线:一条数据线,一条时钟线。
- I2C总线在传送数据 过程中共有三种类型信号:开始信号、结束信号和应答信号。
- 开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。
- 结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。
- 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据I2C写时序。
写时序
首先主机会发送一个开始信号,然后将其I2C的7位地址与写操作位组合成8位的数据发送给从机,从机接收到后会响应一个应答信号,主机此时将命令寄存器地址发送给从机,从机接收到发送响应信号,此时主机发送命令寄存的值,从机回应一个响应信号,直到主机发送一个停止信 号,此次 I2C 写数据操作结束。
读时序
首先主机会发送一个开始信号,然后将其I2C的7位地址与写操作位组合成 8位的数据发送给从机,从机接收到后会响应一个应答信号,主机此时将命令寄存器地址发送给从机,从机接收到发送响应信号,此时主机重新发送一个开始信号 并且将其7位地址和读操作位组合成8位的数据发送给从机,从机接收到信号后发送响应信号,再将其寄存器中的值发送给主机,主机端给予响应信号,直到主机端发送停止信号,此次通信结束。
I2C地址
I2C设备地址为 0X29。
注意:
0X29 这个设备地址是 7 位的,8位设备地址需要向高位移一位变成0X52。
引脚说明
引脚名称 |
引脚功能
|
VIN |
电源正极,工作电压3.3V-5V
|
GND |
电源负极
|
3V3 |
3.3V电压输入/输出
|
SCL |
IIC时钟总线
|
SDA |
IIC数据总线
|
INT |
中断输出(开漏输出)
|
LED |
LED控制引脚
|
原理图
相关资料
TCS34725
参考例程
FAQ
问题:
|
STM32和Arduino例程串口输出没有数据或者数据输出乱码?
|
|
答复:
|
确认波特率是否设置为115200,对于STM32例程请确认电脑正确连接开发板USART1(PA9,PA10),PA9为TXD,并且选择正确的COM端口。控制面板->硬件->设备管理器.
|
|
问题:
|
STM32和Arduino例程串口输出 RGB 数据全部为0或者初始化失败
|
|
答复:
|
请确认器件连接没有问题, 如果没问题请按下复位按键.
|
|
问题:
|
输出的RGB数据全为253并且中断引脚产生中断等
|
|
答复:
|
这种情况是光强超出检查范围, 减小增益即可解决。
|
|
答复:
|
因为积分时间决定了RGBC通道数据最大值,修改积分时间会导致颜色偏暗或者偏白。只需要增加或减少LED亮度即可。
|
|
问题:
|
修改积分时间无法触发中断或者一直重复中断?
|
|
答复:
|
中断是和Clear通道里面的数据进行比较,Clear通道里面的数据和积分时间有关系,经过实际测量在增益为60倍情况下积分时间通道最大值
所以用户如果需要速度比较快的采集数据时,要注意重新设置中断数值。另外在积分时间为2.4ms时RGB数据比较低所以转换出来的颜色与实际颜色有偏差,需要加大LED灯亮度即可。
|
|
|
联系 丢石头
我们的工作时间是: 09:00-18:00 (UTC+8 周一到周六)
|
|