内容介绍
内容介绍
1.硬件介绍
Arduino UNO R4 WiFi 是 Arduino UNO 系列的最新成员,结合了经典 UNO 的易用性和现代功能,如 Wi-Fi 连接和更强的处理能力。它是为物联网(IoT)、教育、原型设计和 DIY 项目设计的理想开发板。
主要特性
1. 处理器
- 型号: Renesas RA4M1 (ARM Cortex-M4)
- 主频: 48 MHz
- 性能: 相比 UNO R3 的 AVR 处理器,性能大幅提升。
2. 内存
- SRAM: 32 KB
- Flash: 256 KB
- EEPROM: 8 KB
3. 无线连接
- Wi-Fi: 内置 ESP32-S3 模块,支持 2.4 GHz Wi-Fi 和蓝牙(BLE)。
- 网络协议: 支持 TCP/IP、HTTP、MQTT 等。
4. 外设接口
- 数字 I/O: 14 个(其中 6 个支持 PWM)
- 模拟输入: 6 个(10 位 ADC)
- 通信接口:
- 1 x UART (Serial)
- 1 x I2C
- 1 x SPI
- USB: USB-C 接口,支持编程和供电。
5. 电源
- 输入电压: 6-24V (通过 VIN 引脚) 或 5V (通过 USB-C)
- 输出电压: 3.3V 和 5V
- 电流限制: 每个 I/O 引脚 20 mA,总电流 200 mA。
6. 其他特性
- 兼容性: 完全兼容 UNO R3 的引脚布局和 Shields(扩展板)。
- LED 矩阵: 内置 12x8 LED 矩阵,可用于显示简单图形或文本。
- Qwiic 连接器: 支持 SparkFun Qwiic 生态系统,方便连接 I2C 设备。
7. 尺寸
- 长宽: 68.6 x 53.4 mm(与 UNO R3 相同)
开发环境
- Arduino IDE: 官方支持,提供丰富的库和示例代码。
- Arduino Web Editor: 支持在线编程。
- 第三方工具: 兼容 PlatformIO、VS Code 等开发环境。
应用场景
- 物联网(IoT):
- 通过 Wi-Fi 连接互联网,实现远程控制和数据传输。
- 支持 MQTT、HTTP 等协议,适合智能家居、环境监测等应用。
- 教育:
- 适合初学者学习编程和电子技术。
- 内置 LED 矩阵和 Wi-Fi 功能,可用于互动教学项目。
- 原型设计:
- 兼容 UNO R3 的 Shields,方便快速搭建原型。
- 强大的处理能力和丰富的接口,适合复杂项目开发。
- DIY 项目:
- 适合制作智能设备、机器人、艺术装置等。
2.功能介绍
本项目实现了通过网络连接到智能云端——Arduino Cloud,并从Arduino Cloud获取板卡上传感器的信息,同时可以在云端控制板卡上LED的亮灭。
3.设计思路
Arduino Cloud对于Arduino系列的板卡有这独特的优化,这使得在Arduino Cloud上与Arduino UNO R4 WiFi这款自带了WiFi的板卡进行数据传输十分的便捷,我们只需要按照指引在Arduino Cloud中配置WiFi信息,添加传感器即可。
4.流程图
5.代码介绍
#include "thingProperties.h"
#include <DHT11.h>
#define DHT_PIN 8
#define LED_PIN 13
DHT11 dht11(DHT_PIN);
void setup() {
// Initialize serial and wait for port to open:
Serial.begin(9600);
// This delay gives the chance to wait for a Serial Monitor without blocking if none is found
delay(1500);
pinMode(LED_PIN, OUTPUT);
// Defined in thingProperties.h
initProperties();
// Connect to Arduino IoT Cloud
ArduinoCloud.begin(ArduinoIoTPreferredConnection);
/*
The following function allows you to obtain more information
related to the state of network and IoT Cloud connection and errors
the higher number the more granular information you’ll get.
The default is 0 (only errors).
Maximum is 4
*/
setDebugMessageLevel(2);
ArduinoCloud.printDebugInfo();
}
void loop() {
ArduinoCloud.update();
// Your code here
delay(1000);
dht11.readTemperatureHumidity(temp, hum);
Serial.println(temp);
Serial.println(hum);
}
/*
Since Led is READ_WRITE variable, onLedChange() is
executed every time a new value is received from IoT Cloud.
*/
void onLedChange() {
// Add your code here to act upon Led change
if(led)
{
digitalWrite(LED_PIN, HIGH);
}
else
{
digitalWrite(LED_PIN, LOW);
}
}
- 初始化:
- 初始化串口通信。
- 设置 LED 引脚为输出模式。
- 初始化 Arduino IoT Cloud 连接。
- 配置调试信息级别。
- 主循环:
- 更新 Arduino IoT Cloud 状态。
- 每隔 1 秒读取 DHT11 传感器的温度和湿度数据,并通过串口打印。
- LED 控制:
- 当 Arduino IoT Cloud 上的
led
变量发生变化时,调用onLedChange()
函数。 - 根据
led
的值控制 LED 灯的开关。
网页效果:
- 当 Arduino IoT Cloud 上的
具体的实物展示可以参考视频。
6.心得体会
本项目让我更加惊叹与Arduino上手的简单与方便,之前发现它的配置过程与代码编写十分简单,适合新手,这次更是发现了连无线通信Arduino也已经优化的十分方便,简洁的界面与快捷的配置过程让我有了全新的体验。
附件下载
Uno_R4_WiFi_oct06a.zip
团队介绍
一位热爱嵌入式开发的大学生
评论
0 / 100
查看更多
猜你喜欢
Arduino UNO R4 WiFi 连接阿里云获取温湿度信息该项目使用了Arduino UNO R4 WiFi,实现了阿里云获取温湿度信息的设计,它的主要功能为:Arduino UNO R4 WiFi 连接阿里云获取温湿度信息。
冲向天空的猪
106
Funpack3-5基于ArduinoR4的传感器云端远程获取该项目使用了ArduinoR4、BH1750FVI传感器,实现了传感器云端远程获取的设计,它的主要功能为:将BH1750FVI传感器的数据通过wifi传输到HA平台。
金玉其中
34
【Funpack3-5】基于Arduino UNO R4 WiFi板的SGP30传感器云端远程获取该项目使用了Arduino、SGP30,实现了空气质量检测的设计,它的主要功能为:使用Arduino对SGP30传感器进行采集并进行远程数据上传。
Bymyself
20