环球今日报丨Arduino Nano 33 BLE Sense板:颜色检测

来源:哔哩哔哩 2023-04-05 04:04:33

【Arduino Nano 33 BLE Sense开发板 - 颜色检测传感器的教程】

教程介绍

我们将在这个教程中介绍如何使用Arduino Nano 33 BLE Sense开发板上的APDS9960传感器来检测颜色。


【资料图】

在光学中,人眼对红、绿、蓝三种原色最为敏感, 其它颜色则可以通过不同比例的红、绿、蓝三色合成产生。

因此,APDS9960的传感器有三个主要颜色的通道:红色,绿色,蓝色,和清晰光强度的通道。每个通道都有一个红紫外线阻挡滤波器和数据转换器。

APDS9960传感器是一种多功能设备,具有手势检测、近感探测、数字环境光感应(ALS)和颜色感应(RGBC)的功能。它可以被应用于多个领域或场景,比如当用户把手机放在耳边时,APDS9960传感器可以检测到距离变化并禁用屏幕。

材料清单

- Arduino Nano 33 BLE Sense开发板 x1

- USB type-c 接线 x1

- 装有Arduino IDE的电脑一台

接线细节

代码

#include <Arduino_APDS9960.h>  //包含APDS9960库

void setup() {

Serial.begin(9600);  //配置串口的波特率, 完成串口的初始化

while (!Serial);  //没有串口连接就不往下执行, 进入死循环, 只适用于Leonardo和 Yun

if (!APDS.begin()) { //假如APDS没有完成初始化

Serial.println("Error initializing APDS9960 sensor.");  //在串口监视器打印错误信息

}

}

void loop() {

while (! APDS.colorAvailable()) { //假如APDS的颜色模块还没找到

delay(5);  //延迟5毫秒

}

int r, g, b;  //变量声明: 红, 绿, 蓝

APDS.readColor(r, g, b);  //用APDS.readColor函数来读取红、绿、蓝的值

//如果红的色值最高, 打开开发板上的红灯

if (r > g & r > b) {

digitalWrite(LEDR, LOW);

digitalWrite(LEDG, HIGH);

digitalWrite(LEDB, HIGH);

}

//如果绿的色值最高, 打开开发板上的绿灯

else if (g > r & g > b) {

digitalWrite(LEDG, LOW);

digitalWrite(LEDR, HIGH);

digitalWrite(LEDB, HIGH);

}

//如果蓝的色值最高, 打开开发板上的蓝灯

else if (b > g & b > r) {

digitalWrite(LEDB, LOW);

digitalWrite(LEDR, HIGH);

digitalWrite(LEDG, HIGH);

}

//不然,打开三色灯

else {

digitalWrite(LEDR, HIGH);

digitalWrite(LEDG, HIGH);

digitalWrite(LEDB, HIGH);

}

// 在串口监视器打印各个原色的值

Serial.print("Red light = ");

Serial.println(r);

Serial.print("Green light = ");

Serial.println(g);

Serial.print("Blue light = ");

Serial.println(b);

Serial.println();

// 延迟500毫秒再开始一个循环

delay(500);

}

上传代码的步骤

第一步,双击Arduino IDE, 打开sketch/项目。

第二步,点击工具>> 开发板>> 开发板管理器>>搜索 “33 BLE”>>安装 Arduino Mbed OS Nano Boards 板。

第三步,点击工具>>开发板>> Arduino Mbed OS Nano Boards >>选择Arduino Mbed OS Nano Boards板。

第四步,点击项目>>点击导入库>>管理库>>搜索“APDS9960”并安装。然后,点击项目>>导入库>>贡献库>>查看APDS9960是否安装好了。

第五步,点击工具>>端口>>选择 BLE端口。

第六步,点击文件(F)>>新建项目>>打开一个新的项目。

第七步,复制并粘贴代码。 

第八步,点击打勾图标>>验证代码。

第九步,点击右箭头图标>>上传代码。

最后,点击工具>>打开串口监视器。

参考资料

代码:https://docs.arduino.cc/tutorials/nano-33-ble-sense/rgb-sensor

音乐:Island Temptation, provided by Storyblocks 

宇航员图片:由微软Bing生成 

与谁同坐,明月清风我~

上一篇 :

下一篇 :

相关推荐

推荐阅读