模板: Color for STM32 use
来自Waveshare Wiki
我们提供的例程是基于STM32F103RBT6跟STM32H743的,提供的连接方式是对应的STM32F103RBT6的引脚为例,如果有需要使用其他STM32,请按实际引脚连接
硬件连接
Color | STM32 | 功能 |
VCC | 3.3V | 电源输入 |
GND | GND | 电源地 |
S0 | NC | 与 S1 端口组合选择不同的输出比例因子 |
S1 | NC | 与 S0 端口组合选择不同的输出比例因子 |
S2 | GPIOA.5 | 与 S3 端口组合选择不同色光的滤波器 |
S3 | GPIOA.4 | 与 S2 端口组合选择不同色光的滤波器 |
OUT | GPIOA.0 | 读取 RGB 三原色对应的输出频率 |
LED | 3.3V | 控制四个 LED 灯的状态 |
软件说明
例程是基于HAL库进行开发的。
请在资料里面下载程序,找到STM32程序文件目录,打开Color-Sensor-code\STM32\STM32F103RB\MDK-ARM
目录下的Color Sensor.uvprojx,即可看到程序。
操作与现象
1、将白纸放置在传感器四个高亮白色 LED 一面(下称正面)的上方 1CM 处。
2、给开发板上电。此时 LED 端口接入高电平,四个高亮白色 LED 点亮。
3、上电之后等待 2 秒钟以上(此时正在调整白平衡)。
4、调整结束以后,把传感器正面对着待测物体,串口输出对应的 RGB 数据,
参考颜色对照表,可知探测到的颜色。
注意事项
1、颜色识别时要避免外界光线的干扰,否则会影响颜色识别的结果,最好
把 Color Sensor 和光源等放置在一个封闭、无反射的盒子中测试。
2、每次 Color Sensor 模块重启或者更换光源时,都需要进行白平衡调整。
代码简介
处理函数在main.c文件里面,在main函数下方。
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) //中断回调