当前位置:首页 > 嵌入式 > 嵌入式云IOT技术圈
[导读]关注、星标嵌入式云IOT技术圈,精彩及时送达我买来做颜色识别传感器的模块是TCS34725,如下图所示(相关资料和本文demo请滑到文末通过clone我的码云仓库链接获取):我买的是如上图所示的方形版本。1、颜色识别传感器TCS34725概述本模块是基于AMS的TCS3472XF...

关注、星标嵌入式云IOT技术圈,精彩及时送达

我买来做颜色识别传感器的模块是TCS34725,如下图所示(相关资料和本文demo请滑到文末通过clone我的码云仓库链接获取):我买的是如上图所示的方形版本。

1、颜色识别传感器TCS34725概述

本模块是基于 AMS 的 TCS3472XFN 彩色光数字转换器为核心的颜色传感器,传感器提供红色,绿色,蓝色(RGB)和清晰光感应值的数字输出。集成红外阻挡滤光片可最大限度地减少入射光的红外光谱成分,并可精确地进行颜色测量。具有高灵敏度,宽动态范围和红外阻隔滤波器。最小化 IR 和 UV 光谱分量效应,以产生准确的颜色测量。并且带有环境光强检测和可屏蔽中断。通过 I2C 接口通信。(摘自说明手册)

颜色传感器的应用:颜色分类分拣系统、多颜色喷头的3D打印机、医疗方面等。

2、原理图与通信接口

通信协议是基于I2C,I2C时序如下:

写时序:

读时序:

I2C的设备地址是0x29。

I2C相关的文章可以参考:

如何看懂时序图(以SPI/I2C为例)

浅谈总线通信机制(通信基础 串口 I2C)

详述I2C总线协议、时序,入门不再是难事

3、颜色传感器E53小板纯手工打造

4、STM32CubeMX配置

由于我手焊的这块E53直接用的就是I2C1接口,所以就在以往带LCD的工程上再配置一路I2C即可:

以往文章有关小熊派的SPI OLED的demo参考:

让传感器数据更直观之LCD曲线显示

自己动手撸个简单的LCD驱动框架吧!

基于小熊派光强传感器BH1750状态机驱动项目升级(带LCD屏显示)

接下来直接生成工程即可。

5、移植例程

官方已经为我们提供了STM32的例程代码,所以我们直接移植过来然后修改成我们想要的效果就行了,白嫖毫无费功夫:

当然,如果你觉得调的参数有问题,可以修改下面这个函数,将积分时间进行修改:

int begin(void) 
{
  /* Make sure we're actually connected */
  uint8_t x = read8(TCS34725_ID);
 if(x != 0x4D )
  return false ;
  _tcs34725Initialised = true;
  /* Set default integration time and gain */
 /*积分时间,增益值控制*/
  setIntegrationTime(TCS34725_INTEGRATIONTIME_2_4MS);
 //RGB值过大,光强超出检查范围,减小增益(TCS34725_GAIN_16X)
  setGain(TCS34725_GAIN_1X);
  /* Note: by default, the device is in power down mode on bootup */
  enable();
  return true;
}
所有的宏定义位于tcs34725.h中,这些宏定义具体的作用是什么,请详细阅读该模块的数据手册:

6、实验效果

经过测试结果,我个人感觉这个传感器的识别效果误差还是挺大的,可能会受环境、距离等因素影响,不过,用来简单做些DIY问题不大。

7、项目开源地址

本节代码已同步到码云的代码仓库中,获取方法如下:

码云仓库:

https://gitee.com/morixinguan/bear-pi/tree/master/25.TCS34725_Color_Sensor获取项目方法:

git clone https://gitee.com/morixinguan/bear-pi.git我还将之前做的一些项目以及练习例程在近期内全部上传完毕,与大家一起分享交流,如果有任何问题或者对该项目感兴趣,欢迎加我微信:morixinguan一起交流学习。

往期精彩

都说软件架构要分层、分模块,具体应该怎么做(二)

开源:智能宠物弹射喂食器连载贴之步进电机控制(二)

U盘容量大小造假技术手段实现之8M变4G(以STM32 SPI_FLASH为例)

手把手教你在STM32上实现OLED视频播放(很简单也很硬很肝!)

一些值得被定义为常用C语言头文件库的漂亮宏定义(值得收藏,以备使用参考)

觉得本次分享的文章对您有帮助,随手点[在看]并转发分享,也是对我的支持。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭