Arduino哈士奇颜色识别代码
时间: 2024-01-15 14:50:51 浏览: 121
颜色的代码
4星 · 用户满意度95%
以下是一个简单的Arduino哈士奇颜色识别代码的示例:
```cpp
#include <Adafruit_TCS34725.h> // 导入颜色传感器库
Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_4X); // 初始化颜色传感器
void setup() {
Serial.begin(9600); // 串口初始化
if (tcs.begin()) {
Serial.println("Found color sensor");
} else {
Serial.println("No TCS34725 found ... check your connections");
while (1);
}
}
void loop() {
uint16_t r, g, b, c;
tcs.getRawData(&r, &g, &b, &c); // 读取颜色传感器的原始数据
// 将原始数据转换为RGB值
float red = (float)r / c;
float green = (float)g / c;
float blue = (float)b / c;
Serial.print("R: "); Serial.print(red, 4); Serial.print(" ");
Serial.print("G: "); Serial.print(green, 4); Serial.print(" ");
Serial.print("B: "); Serial.print(blue, 4); Serial.print(" ");
// 比较RGB值,判断颜色
if (red > 0.5 && green < 0.5 && blue < 0.5) {
Serial.println("Red");
} else if (red < 0.5 && green > 0.5 && blue < 0.5) {
Serial.println("Green");
} else if (red < 0.5 && green < 0.5 && blue > 0.5) {
Serial.println("Blue");
} else if (red > 0.5 && green > 0.5 && blue < 0.5) {
Serial.println("Yellow");
} else {
Serial.println("Unknown");
}
delay(1000); // 等待1秒钟
}
```
这个代码基于Adafruit_TCS34725库,使用颜色传感器来读取颜色,并将读取的RGB值转换为浮点数以进行比较。您可以根据您的需要修改RGB值的阈值来识别不同的颜色。
阅读全文