模板: TCS34725 for RPI use
来自Waveshare Wiki
开启I2C接口
- 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动
sudo reboot
安装库
如果使用bookworm系统,只能使用lgpio库,bcm2835跟wiringPi无法安装与使用
BCM2835
#打开树莓派终端,并运行以下指令 wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz tar zxvf bcm2835-1.71.tar.gz cd bcm2835-1.71/ sudo ./configure && sudo make && sudo make check && sudo make install # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
wiringPi
#打开树莓派终端,并运行以下指令 cd sudo apt-get install wiringpi #对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级: wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错 #Bullseye分支系统使用如下命令: git clone https://github.com/WiringPi/WiringPi cd WiringPi ./build gpio -v # 运行gpio -v会出现2.70版本,如果没有出现说明安装出错
lgpio
#树莓派5 sudo apt install python3-rpi-lgpio #别的树莓派也可打开终端,并运行以下指令 wget https://github.com/joan2937/lg/archive/master.zip unzip master.zip cd lg-master sudo make install # 更多的可以参考官网:https://github.com/gpiozero/lg
- 安装Python函数库
#python2 sudo apt-get update sudo apt-get install python-pip sudo apt-get install python-pil sudo apt-get install python-numpy sudo pip install RPi.GPIO sudo pip install spidev
下载测试程序
打开树莓派终端,执行:
sudo apt-get install p7zip-full -y sudo wget https://www.waveshare.net/w/upload/a/a1/TCS34725_Color_Sensor_code.7z 7z x TCS34725_Color_Sensor_code.7z -O./TCS34725_Color_Sensor_code cd TCS34725_Color_Sensor_code/RaspberryPi/
硬件连接
TCS34725 | Raspberry Pi | 功能 |
Board物理引脚序号 | ||
VCC | 3.3V | 电源输入 |
GND | GND | 电源地 |
SDA | 3 | I2C数据输入 |
SCL | 5 | I2C时钟信号 |
INT | 11 | 中断输出(开漏输出) |
LED | 12 | 发光二极管 |
运行测试程序
以下命令请在RaspberryPi下执行,否则不在索引不到目录;
C
- 重新编译,编译过程可能需要几秒
bcm2835
cd bcm2835 sudo make clean sudo make sudo ./main
wiringPi
cd wiringPi sudo make clean sudo make sudo ./main
python
cd python sudo python main.py
现象
在树莓派运行程序后,就会输出检测到的颜色值,目前是检测红色的值,如下图所示:
bcm2835
wiringPi
python
其中R、G、B是RGB888格式以十进制分开输出,C是没有做任何处理的环境光强数值,RGB565、RGB888分别是对应格式的十六进制输出,LUX是已经处理过的环境光强数字,CT是色温。(http://www.360doc.com/content/17/0629/07/44859260_667365022.shtml),用户如果想测量色温偏差小,建议关闭LED灯。INT是中断,1标识光强超过设定值。
将数值转换成颜色,可以通过下面连接的工具实现:
https://www.sioe.cn/yingyong/yanse-rgb-16/
或者直接下载:https://www.waveshare.net/w/upload/0/05/Hexacolor3.7z