感谢EEPW本次提供的ARDUINO NANO 33 BLE开发板的测评机会,以下为开发板的资料页面,可以在这里找到开发板的相关资料。
https://docs.arduino.cc/hardware/nano-33-ble-sense-rev2/
开发板支持使用Arduino开发,十分适合快速开发代码和验证应用。
# 1、安装开发板支持、外设驱动库
通过开发板主页的Get Started页面会跳转到以下页面
https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-board-manager/#mbed-os-nano
通过页面上的链接跳转到以下链接指向的页面。
https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-board-manager/#installing-a-board-package
按照Board Package安装指导页面的指南,在Board Manager中安装支持Arduino nano 33 BLE Sense Rev2的“Arduino Mbed OS Nano Boards”支持包。
接下来在Library Manager中,搜索并安装以下传感器和蓝牙驱动库。
通过IDE中的Library Manager确定库安装完全后,接下来就可以开发Arduino应用开发程序。
这里以板载温湿度传感HS3003的读取为例,以下代码实现板载HS3003温湿度传感的数据读取并发送到上位机显示。
#include <Arduino_HS300x.h> float old_temp = 0;float old_hum = 0; void setup() { // put your setup code here, to run once: Serial.begin(9600); while(!Serial); if(!HS300x.begin()){ Serial.println("Failed to initialize humidity temperature sensor!"); while(1); } } void loop() { // put your main code here, to run repeatedly: // read all the sensor values float temperature = HS300x.readTemperature(); float humidity = HS300x.readHumidity(); if (abs(old_temp - temperature) >= 0.5 || abs(old_hum - humidity) >= 1 ) { // print each of the sensor values Serial.print("Temperature = "); Serial.print(temperature); Serial.println(" °C"); Serial.print("Humidity = "); Serial.print(humidity); Serial.println(" %"); // print an empty line Serial.println(); // wait 1 second to print again delay(1000); }}
读取的效果如下。
# 2、phyphox读取开发板板载传感器数据
Arduino社区项目中有一个通过phyphox APP检测开发板传感器的应用。下面是项目的地址。
https://vulgarisation.fr/projet/arduino_nano/?lang=en
网页版的手册:https://view.genially.com/6087fa25a5a30b0d334125a9
首先安装额外的驱动库,确认以下驱动库安装成功。
- phyphox_BLE,par RWTH Aachen University
- Arduino_LSM9DS1,par Arduino
- Arduino_LPS22HB,par Arduino
- Arduino_HTS221,par Arduino
- Arduino_APDS9960,par Arduino
- Arduino_BMI270_BMM150,par Arduino
- Arduino_HS300x,par Arduino
在项目的主页上可以找到适用于开发板的示例程序,程序实现开发板传感器的初始化,开启蓝牙等待连接。在与phyphox APP连接后,根据接收到的数据,读取不同的传感器数据并通过蓝牙发送到手机端显示。完整的程序代码可以见附件。
连接开发板并烧录程序。完成后,需要在手机端安装phyphox APP,在APP中通过扫描二维码添加相应的实验。
添加完成后,在APP中可以找到Arduino Nano 33 BLE Sense 的实验标签。
点击任意的实验标签,会提示连接进行实验的设备
成功连接设备后,点击上方的运行按钮即可开始读取对应的传感器数据。
实验提供不同的数据显示样式,以不同的形式展示传感器数据的变化。
具体的实验演示可以查看以下视频
https://www.bilibili.com/video/BV1GrJ3zXEWY/
该项目的代码是开源的,是很不错的学习样例,通过蓝牙连接开发板,配合手机端phyphox APP控制开发板读取不同的传感器数据并上传到手机端显示。
# 3、总结
配合Arduino开发工具和社区生态,可以很快上手Arduino Nano 33 BLE Sense,并实现有趣的应用。而且其中很多代码是开源的,有助于扩宽应用设计的思路和编程技巧。