【联盛德 W800 Arduino开发板】简介、环境搭建、工程测试
开发板简介
file:///D:/SoftwarePackage/31Pre-test/%E8%81%94%E7%9B%9B%E5%BE%B7W800%E5%BC%80%E5%8F%91%E6%9D%BF/fig/IMG_20241101_171940.jpg?lastModify=1730588407
该开发板是一款基于 Wi-Fi/蓝牙 Combo SoC W800调试板卡,兼容 Arduino 接口。
支持作为 Wi-Fi 模块与 Arduino 接口主板对接;
也支持作为MCU主控板进行独立调试开发。
支持丰富的主、从设备接口。
外围器件:
- 外置天线接口和板载天线
- 集成了5v 转 3.3v LDO 芯片
- 提供了 BOOT、RESET 和 USER 按键
- 内置一个三色 LED 灯
参考:W800-Arduino 入门指南 — WinnerMicro 在线文档
原理图
MCU
W800 芯片是一款安全 IoT Wi-Fi/蓝牙 双模 SoC 芯片。支持 2.4G IEEE802.11b/g/n Wi-Fi 通讯协议;支持 BT/BLE 双模工作模式,支持 BT/BLE4.2 协议。芯片集成 32 位 CPU 处理器,内置 UART、GPIO、SPI、I2C、I2S、7816 等数字接口;支持TEE安全引擎,支持多种硬件加解密算法,内置 DSP、浮点运算单元,支持代码安全权限设置,内置 2MBFlash 存储器,支持固件加密存储、固件签名、安全调试、安全升级等多项安全措施,保证产品安全特性。适用于用于智能家电、智能家居、智能玩具、无线音视频、工业控制、医疗监护等广泛的物联网领域。
规格
芯片外观
✓ QFN32 封装,4mm x 4mm
◼ MCU 特性
✓ 集成 32 位 XT804 处理器,工作频率 240MHz,内置 DSP、浮点运算单元与安全引擎
✓ 内置 2MB Flash,288KB RAM
✓ 集成 5 路 UART 高速接口
✓ 集成 2 路 12比特 SD-ADC,最高采样率 1KHz
✓ 集成 1 个 I2C 控制器
✓ 集成 GPIO 控制器,最多支持 18 个 GPIO
✓ 集成 5 路 PWM 接口
✓ 集成 1 路 Duplex I2S 控制器
◼ 安全特性
✓ MCU 内置 Tee 安全引擎,代码可区分安全世界/非安全世界
✓ 集成 SASC/TIPC,内存及内部模块/接口可配置安全属性,防止非安全代码访问
✓ 启用固件签名机制,实现安全 Boot/升级
✓ 具备固件加密功能,增强代码安全
✓ 固件加密密钥使用非对称算法分发,增强密钥安全性
✓ 硬件加密模块:RC4、AES128、DES/3DES、SHA1/MD5、CRC32、2048 RSA,真随机数发生器
◼ Wi-Fi 特性
✓ 支持 GB15629.11-2006,IEEE802.11 b/g/n
✓ 支持 Wi-Fi WMM/WMM-PS/WPA/WPA2/WPS
✓ 支持 EDCA 信道接入方式
✓ 支持 20/40M 带宽工作模式
✓ 支持 STBC、GreenField、Short-GI、支持反向传输
✓ 支持 AMPDU、AMSDU
✓ 支持 IEEE802.11n MCS 0~7、MCS32 物理层传输速率档位,传输速率最高到 150Mbps
✓ 2/5.5/11Mbps 速率发送时支持 Short Preamble
✓ 支持 HT-immediate Compressed Block Ack、Normal Ack、No Ack 应答方式
✓ 支持 CTS to self
✓ 支持 Station、Soft-AP、Soft-AP/Station 功能
◼ 蓝牙特性
✓ 集成蓝牙基带处理器/协议处理器,支持 BT/BLE 双模工作模式,支持 BT/BLE4.2 协议
◼ 电源管理
✓ 3.3V 单电源供电
✓ 支持 Wi-Fi 节能模式功耗管理
✓ 支持工作、睡眠、待机、关机工作模式
✓ 待机功耗小于 10uA
开发环境搭建
1.下载和安装 VS Code 平台:Visual Studio Code
2.下载 WM IoT SDK
3.安装 Windows 命令行编译环境
4.安装 WM-IDE 扩展
5.扩展 IDE 配置
包括 SDK 路径和编译工具路径的设置
其中 WM Dev Suite 编译工具可选择目标路径并安装。
工程测试
新建和编辑
新建 Hello world 工程
- #define LOG_TAG "test"
- #include "wm_log.h"
- #include "freertos/FreeRTOS.h"
- #include "freertos/task.h"
- static void test_task(void *parameters)
- {
- while (1) {
- wm_log_info("hello world.");
- vTaskDelay(pdMS_TO_TICKS(1000));
- }
- vTaskDelete(NULL);
- }
- int main(void)
- {
- xTaskCreate(test_task, "test", 512, NULL, 5, NULL);
- return 0;
- }
编译和烧录
右键 main.c 文件,选择 WM IoT SDK,实现配置、编译和烧录操作
端口选择,可通过设备管理器查看端口号,
需要注意的是,开发板具备两个串口,一般第二个作为UART使用。
烧录完成,弹窗如图所示
打开 串口监视器,设置端口号和波特率,点击 开始监视 ,效果如下