【Ai-WB2-12F开发板测评】简介、环境搭建、固件烧录
Ai-WB2-12F 开发板是基于 Ai-WB2-12F 模组设计的开发板,板载 串口通信 USB 转 TTL 芯片 CH340C,LDO 稳压电路、RGB 三色 LED、Reset 按键、Bootloader 按键等,所有 GPIO 引出便于调试和开发。
简介
模组
Ai-WB2-12F 是由安信可科技有限公司开发的 Wi-Fi&BT 模组,该模组搭载 BL602 芯片作为核心处理器,支持 Wi-Fi 802.11b/g/n 协议和BLE 5.0 协议。
BL602 芯片内置低功耗的 32 位 RISC CPU,276KB RAM 和丰富的外围接口,
包括SDIO,SPI,UART,I2C,IR remote,PWM,ADC,DAC,PIR 和GPIO 等。
可广泛应用于物联网(IoT)、移动设备、可穿戴电子设备、智能家居等领域。
主要特点
- 采用 SMD-22 封装
- 支持IEEE 802.11 b/g/n 协议
- Wi-Fi 安全支持WPS/WEP/WPA/WPA2 Personal/WPA3
- 支持20MHz 带宽,最高速率72.2 Mbps
- Bluetooth 低能耗5.0,Bluetooth Mesh
- 支持Station + BLE 模式、Station + SoftAP + BLE 模式
- 支持32-bit RISC CPU,276KB RAM
- 安全启动,支持使用ECC-256 签名的镜像
- 支持QSPI/SPI Flash 即时AES 解密(OTFAD),支持AES 128 CTR 模式
- 支持AES 128/192/256 位加密引擎
- 支持SHA-1/224/256
- 支持真实随机数发生器(TRNG)
- 公钥加速器(PKA), 支持大数基本运算, 软件提供签名,验证等应用程序接口
- 支持SDIO,SPI,UART,I2C,IR remote,PWM,ADC,DAC,PIR ,GPIO 等
- 集成Wi-Fi MAC/BB/RF/PA/LNA/BT
- 支持多种休眠模式,深度睡眠电流12μA
- 通用AT 指令可快速上手
- 支持二次开发,集成了Windows、Linux 开发环境
参数
类别 | 参数 |
---|---|
型号 | Ai-WB2-12F |
封装 | SMD-22 |
尺寸 | 24.0*16.0*3.1(±0.2)mm |
天线形式 | 板载天线 |
频谱范围 | 2400 ~ 2483.5MHz |
工作温度 | -40℃ ~ 85℃ |
存储环境 | -40℃ ~ 125℃, < 90%RH |
供电范围 | 供电电压 2.7 ~ 3.6V,供电电流 ≥500mA |
支持接口 | UART/GPIO/ADC/PWM/I2C/SPI |
可用IO数量 | 11个 |
串口速率 | 默认115200 bps |
安全性 | WPS/WEP/WPA/WPA2 Personal/WPA3 |
Flash | 默认4MByte,支持扩展 |
模组封装
模组原理图
开发板原理图
开发环境配置
参考官方 Windows 系统环境配置教程:https://blog.csdn.net/Boantong_/article/details/128480919
这里需要注意配置环境变量时,路径中不能存在空格。
简要梳理流程:
-
Eclipse IDE 软件的 下载 与安装;
-
msys2 软件的 下载 与安装,并输入如下代码回车,安装 git 和 make,
pacman -S git pacman -S make
以便实现开发文件部署和程序编译;
-
Ai-WB2 系列 SDK 开发包部署,在目标部署磁盘右键,选择 Open Git Bash here ,键入如下指令
git clone --recursive https://gitee.com/Ai-Thinker-Open/Ai-Thinker-WB2
使用 Git 工具克隆固件包,等待克隆完成即可关闭 git 命令窗口。
固件烧录
对于已经合成的固件,操作如下
1.选择目标固件路径 - 选择开发板串口号 - 设置串口下载波特率 - Open Uart
;
2.按住Boot键的同时,短按 RST
键,进入下载模式;
3.点击 Create & Download
按钮 - 进度条至 100%
并提示 All Success
;
4.短按 RST 键复位即可。
串口调试
根据原理图可知
板载 LED 为高电平点亮,RGB 对应的 GPIO 引脚分别为 IO14、IO17、IO3
根据 GPIO 输出配置指令协议
AT+SYSGPIOWRITE=<pin>,<level>
响应为 OK
可实现对应 GPIO 输出电平的控制。
详见:AT 指令集 .
二次开发实现闪灯
参考官方环境搭建教程:https://blog.csdn.net/Boantong_/article/details/128480919
1.打开 Eclipse IDE 软件,新建 RISC-V 工程并导入目标 SDK 文件夹;
2.配置 Windows 构建工具,工具链路径;
3.配置 SDK 项目的 C/C++ 构建工具、工具链路径、目标工程路径等;
4.清洁 Clean Project、代码编写、和构建 Build 工程。
代码
#include <stdio.h>
#include <string.h>
#include <FreeRTOS.h>
#include <task.h>
#include <bl_gpio.h>#define GPIO_LED_PIN 3void blink_test(void *param)
{uint8_t value = 1;while (1){bl_gpio_enable_output(GPIO_LED_PIN, 0, 0);printf("Turning the LED %s! \r\n", value == 1 ? "ON" : "OFF");bl_gpio_output_set(GPIO_LED_PIN, value);value = !value;vTaskDelay(200);}
}void main(void)
{xTaskCreate(blink_test, "blink", 1024, NULL, 15, NULL);
}
修改 GPIO_LED_PIN
定义和 vTaskDelay
函数可以调整目标GPIO引脚和延迟时间。
固件烧录配置
加载目标固件,配置串口参数,打开串口,按下 BOOT 和 RST 按键进入烧录模式,点击创建和下载,待进度条完成,按 RST 键复位芯片即可。
效果
调整延时为 vTaskDelay(200);
同时,串口输出该时刻的 LED 状态 ON 或 OFF .