Pmod颜色参考手册

Digilent Pmod COLOR (Revision A)是一款能够感知红、绿、蓝和清晰光的颜色传感器模块。机上AMS TCS3472集成红外阻挡滤光片,准确确定物体的颜色,并在不同的照明条件下通过衰减材料感知环境光。


特性

  • 红色,绿色,蓝色,和清晰的光感应
  • IR-blocking过滤器
  • 白色领导反射测量
  • 适合在深色玻璃后面使用
  • 适用于灵活设计的小型PCB尺寸0.8 " × 1.25 " (2.0 cm × 3.2 cm)
  • 带有I²C接口的6针Pmod连接器
  • 用于菊花链的直通Pmod主机端口
  • 遵循Digilent接口规范类型6
  • 的库和示例代码资源中心

规范

参数 最小值 典型的 马克斯 单位
电源电压 2.7 3. 3.6 V
参数 通道 最小值 马克斯 单位
对蓝光的响应(λ = 465 nm) 红色通道¹ 0% 15% ²计数/μW /厘米
绿色通道¹ 10% 42% ²计数/μW /厘米
蓝色通道¹ 65% 88% ²计数/μW /厘米
清晰频道 11.0 16.6 ²计数/μW /厘米
对绿光的响应(λ = 525 nm) 红色通道¹ 4% 25% ²计数/μW /厘米
绿色通道¹ 60% 85% ²计数/μW /厘米
蓝色通道¹ 10% 45% ²计数/μW /厘米
清晰频道 13.2 20.0 ²计数/μW /厘米
对红光的响应(λ = 615 nm) 红色通道¹ 80% 110% ²计数/μW /厘米
绿色通道¹ 0% 14% ²计数/μW /厘米
蓝色通道¹ 5% 24% ²计数/μW /厘米
清晰频道 15.6 23.4 ²计数/μW /厘米
参数 价值 单位
输出分辨率 16

¹-百分比值是由透明(非彩色过滤)通道测量的计数


引脚分配表图

头j - 1 头J2 跳投JP1
信号 描述 信号 描述 状态 描述
1 IO1 / ~INT I/O引脚1或有源低中断 1 IO1 / ~INT I/O引脚1或有源低中断 sci 加载/卸载 2.2 kΩ上拉到Vcc/没有上拉到Vcc
2 IO2 /领导_EN I/O引脚2或领导启用 2 IO2 /领导_EN I/O引脚2或领导启用 跳投JP2
3. sci 串行时钟 3. sci 串行时钟 SDA 加载/卸载 2.2 kΩ上拉到Vcc/没有上拉到Vcc
4 SDA 串行数据 4 SDA 串行数据 跳投JP3
5 接地 地面电源 5 接地 地面电源 INT 加载/卸载 启用/禁用主动低中断
6 VCC 电源(3.3 v) 6 VCC 电源(3.3 v) 跳投JP4
领导_EN 加载/卸载 启用/禁用领导使销

物理维度

销头上的销间隔为100密耳。该PCB是1.34英寸长边平行于引脚头部和0.8英寸长边垂直于引脚头部。


功能描述

Pmod Color利用TCS3472来检测附近的颜色。当与主板通过我²C协议使用一个I²C地址0x29的用户可以测量颜色。用户控制的白色领导还提供帮助照亮对象和改善颜色测定;的领导是非常明亮的,所以建议用户不要盯着灯。

串行通信

Pmod COLOR通过我²C协议.通过先发送7位I²C设备地址0101001 (0x29),用户可以接收到来自TCS3472的颜色数据。四个中的每一个ADC通道(红、绿、蓝和清)发送它的转换ADC发送到主机缓冲区。

TCS3472可以设置每一轮数据采集的增益和积分时间。集成时间为颜色传感器提供了更多的时间来收集更多的数据,提供准确的数据,并有助于防止数据不成比例地捕捉任何可能发生的过度曝光。每一组16位数据被组织在一个低字节,高字节安排。

注册详细信息

数据寄存器

每三种颜色(RGB)和清晰的颜色字节有两个寄存器存储每个测量的高和低数据字节。数据寄存器按低字节、高字节排列。

数据寄存器地址为0x14到0x1B
地址 注册的名字
0 x14 清除数据低字节
0连接 清除数据高字节
0 x16 红色数据低字节
0 x17 红色数据高字节
0 x18 绿色数据低字节
0 x19 绿色数据高字节
0 x1a 蓝色数据低字节
0 x1b 蓝色数据高字节

命令寄存器

命令寄存器控制内部地址指针的功能并清除中断。

位名称 一些数量 一些描述 位的值 功能描述
CMD 7 命令 选择命令寄存器;必须设置高
类型 6 - 5 类型 00¹ 选择数据传输的类型²
ADDR /科幻小说 4 - 0 地址/专业 00000年¹ 寄存器地址字段和特殊功能字段³

¹-这是通电和复位的值²-参见事务表下面³-见地址字段和特殊功能表下面

事务表

事务表
位的值 交易类型
00 重复的字节在同一寄存器
01 自动增加到下一个寄存器
10 保留-不写
11 特殊函数³

³-参见地址字段和特殊功能表下面

地址字段和特殊功能表

地址字段和特殊功能字段
位的值 阅读的价值
00110 清除任何挂起的中断和自我清除
其他 保留-不写

控制寄存器(0 x0f)

控制寄存器(0x0F)设置应用于ADC颜色数据。

控制寄存器
位名称 一些数量 一些描述 位的值 功能描述
保留 7 - 2 保留 000000年¹ 保留-写入0
再一次 1 - 0 模拟获得 00¹ RGBC增益控制²

¹-这是通电和复位的值²-参见获得价值表下面

RGBC增益值表

RGBC增益值表
比特值 RGBC增益值
00 1 x获得
01 4 x获得
10 16 x获得
11 60 x获得

状态寄存器(0 * 13)

状态寄存器(0x13)是一个只读寄存器,它提供通道中断的状态以及adc是否完成了数据收集。

状态寄存器
位名称 一些数量 一些描述 位的值 功能描述
保留 7 - 5 保留 000年¹ 保留
不是 4 模拟数据中断 RGBC清除信道中断
保留 3 - 1 保留 000年¹ 保留
”我 0 模拟数据有效 当通道完成一个集成周期时,RGBC有效位

¹-这是通电和复位时的值

快速启动

下面是通过伪I²C代码从Pmod COLOR获取一组数据的一系列命令。

  1. 打开Pmod COLOR。
  2. 提供一个START条件并调用带有写位的设备ID
    I2CBegin (0 x52);//设备ID 0x29带有写(0)位
  3. 等待接收来自Pmod COLOR的ACK。
  4. 提供一个命令来维护指针地址或与启用寄存器(0x00)
    I2CWrite (0 xa0);//维护指针地址在Enable寄存器
  5. 等待接收来自Pmod COLOR的ACK。
  6. 发送启用地址并启用振荡器。
    I2CWrite (0 x01);//0x01为定时器和ADC通道启用振荡器
  7. 在启动数据收集初始化之前,延迟至少2.4 mS。
  8. 发送使能地址并使能所有4个通道的adc。
    I2CWrite (0 x02);//0x02启用ADC通道
  9. 等待从Pmod COLOR收到一个ACK,然后发送一个STOP条件。
  10. adc准备数据测量时延迟2.4 ms,数据采集过程中集成时间默认至少延迟2.4 ms。
  11. 发送一个START条件并调用带写位的设备ID
    I2CBegin (0 x52);//设备ID 0x29带有写(0)位
  12. 等待接收来自Pmod COLOR的ACK。
  13. 使用第一个数据寄存器(0x14)自动增加地址指针或
    I2CWrite (0 xb4);//从清除数据低字节寄存器开始自动增加指针地址
  14. 等待接收来自Pmod COLOR的ACK
  15. 提供一个RESTART条件并调用带有读取位的设备ID
    I2CBegin (0 x53);//设备ID 0x29带有一个read(1)位
  16. 等待接收来自Pmod COLOR的ACK。
  17. 分别收集清晰、红色、绿色和蓝色数据的低数据字节寄存器和高数据字节寄存器对应的所有8个数据字节,在每个字节之间向Pmod Color发送ACK。
    I2CReadMultiple (8);//使用自动递增的指针读取8个数据寄存器
  18. 发送一个STOP条件。

应用程序信息

Pmod COLOR是基于对象颜色执行不同任务的有趣应用程序的理想选择。这是完美的分类不同的物体或控制电机基于检测色温。

数据转换

AMS TCS3472模块有四种不同的ADC通道检测红,绿,蓝,和清晰的环境光数据。这种性质的色度计没有完美的传感能力,所以一些颜色传感器,特别是绿色和蓝色,不能测量数据的全部数据范围

时序图

下面提供了一个从AMS数据表中读取和写入Pmod COLOR的示例时序图:

Pmod彩色时序图

当使用外部电源运行Pmod时,请确保保持在规范


额外的信息

Pmod COLOR的原理图可用在这里.有关颜色传感器的其他信息,包括通信模式和芯片的特定时间,可以从AMS网站下载它的数据表在这里

演示如何从Pmod COLOR获取信息的示例代码可以在其资源中心找到在这里

如果你有任何关于Pmod COLOR的问题或评论,请随时将其张贴在适当的部分(“附加板”)Digilent论坛