|
在本篇文章中,我们将学习REYAX RYB080I BLE蓝牙模块与Arduino开发板的连接方式。REYAX RYB080I模块是Reyax Technology公司的超低功耗蓝牙模块。蓝牙基于德州仪器芯片,名为Reyax RYB080I BLE芯片。我们将详细介绍这款蓝牙模块的特性、规格和功耗,并将其与其他经典蓝牙模块如HC-05和HC-06进行比较。
然后我们将使用REYAX RYB080I BLE模块和Arduino制作一些项目。首先,我们将制作一个智能脉搏血氧计项目并测量血氧和心率,并在Android应用程序上显示BPM和SpO2值。在第二个示例中,我们将DHT11湿度温度数据无线发送到Android应用程序。在第三个示例项目中,我们将通过从Android 应用程序发送一些命令来控制多个LED灯。
所需的组件 ● Arduino Nano开发板 ● MAX30100脉搏血氧计传感器 ● 0.96寸I2C OLED显示屏 ● Reyax RYB080I蓝牙模块 ● 5mm LED灯 ● DHT11温湿度传感器 ● 连接跳线 ● 面包板
REYAX RYB080I BLE蓝牙模块
RYB080I蓝牙模块支持v4.2和v5.0蓝牙低功耗,同时该模块体积非常小,功能强大,足以为您的项目添加无线连接。该模块基于德州仪器的CC2640R2F ARM Cortex M3芯片。超低功耗BLE模块可用于尺寸和功率非常重要的项目。
将这款RYB080I蓝牙模块与HC-05或HC-06等蓝牙模块进行比较,您会发现外形尺寸不到一半。它们都是UART模块并使用AT命令。
该蓝牙模块上有5个引脚。VDD工作在3.3V电源,用于UART通信的Tx和Rx引脚。另外它有一个用于复位模块的复位引脚。最后是一个GND接地引脚。
该模块的主要特征: • 蓝牙v4.2和 v5.0,低功耗蓝牙 • 基于TI CC2640R2F ARM Cortex-M3芯片 • 可以同时连接两个蓝牙设备 • 支持主机-客户角色。 • 采用PCB集成天线设计 • 抗EMI干扰的金属盖 • 仅通过2个UART引脚发送、接收、唤醒 • 通过AT指令轻松控制 • 标准通用属性配置文件 (GATT)
该模块工作在1.8V至3.8V之间。输出范围为-21 至 +5 dBm。广播模式下的活动电流约为1.5mA。在广播模式下,平均电流在0.2mA左右。您可以通过RYB080I数据表了解有关电流的更多信息。同样,待机电流仅为2uA,从睡眠模式唤醒需要2毫秒。
使用REYAX RYB080I BLE蓝牙模块和Arduino的智能脉搏血氧仪示例 现在让我们看一些使用REYAX RYB080I BLE蓝牙模块和Arduino的示例项目。第一个示例是智能脉搏血氧计项目。在该示例中,我们将在OLED显示屏和Android应用程序中显示测量的血氧百分比 (SpO2) 和心率BPM。该项目的电路图如下所示。
该实例使用了MAX30100脉搏血氧计传感器和OLED显示屏。两者都是I2C模块。蓝牙模块RYB080I由3.3V电源供电。UART引脚使用分压器网络转换为3.3V逻辑电平。
下面给出了脉搏血氧仪的完整代码。该代码需要一些库进行编译。
Arduino Pulse Oximeter.rar
(814 Bytes, 下载次数: 2)
代码上传后,OLED显示屏将开始显示BPM和SpO2值。现在打开手机上的蓝牙。要控制BLE模块,您需要在手机上安装REYAX BLE UART应用程序。
应用安装后,点击连接。并从列表中选择REYAX BLE模块。Android应用程序将快速连接到Reyax蓝牙,然后开始始显示BPM和SpO2值。将手指放在MAX30100传感器上,会显示BPM和氧气百分比。因此,您可以在健康监测设备中使用RYB080I蓝牙模块。
使用REYAX RYB080I BLE蓝牙模块和Arduino的气象站示例 现在让我们制作另一个项目。本示例介绍在智能手机上通过蓝牙监控传感器数据,以DHT11温湿度传感器作为参考。电路图如下所示。
Arduino与RYB080I蓝牙模块之间的连接还是一样的。电路中添加了DHT11,输出引脚连接到Arduino开发板的D2。
以下是该示例的代码,使用了DHT11 Arduino库,从传感器中检索湿度和温度数据。复制此代码并将其上传到Arduino开发板。
dht11.rar
(523 Bytes, 下载次数: 2)
再次将Android应用程序连接到Reyax蓝牙模块。手机连接Reyax蓝牙后,就会开始获取温湿度数据。
示例中显示了房间的湿度和温度。以上就是如何使用RYB080I蓝牙模块和Arduino制作一个简单的气象站项目,并在智能手机上无线监控。
使用REYAX RYB080I BLE蓝牙模块和Arduino实现多个LED控制示例 现在,让我们看看第三个例子。在本例中,我们将通过从手机发送一些命令来控制3个不同的 LED。以下是硬件连接图。
以下是该示例的完整代码。复制代码并上传到Arduino开发板中。
led.rar
(388 Bytes, 下载次数: 4)
所有的LED灯均通过3.3V引脚供电,并连接到数字输出引脚以进行连接。现在再次将android应用程序连接到Reyax蓝牙。
蓝牙连接后,发送a、b、c或x命令就可以点亮和熄灭对应的LED灯。同样,您可以使用该REYAX RYB080I蓝牙模块和Arduino实现一些其他项目。如果有任何疑问,请随时在本帖下面回复。
|