RTL8720DN开发笔记一 环境搭建与mqtt实例

简介

RTL8720DN是一款支持双频WiFi的Soc芯片,即2.4GHz或5.8GHz频段,可以告别在选择WiFi网络时仅支持2.4G的尴尬,不仅如此,RTL8720DN还支持了低功耗蓝牙BLE5.0,内部集成了两颗MCU,分别为ARM V8M(KM4 兼容Cortex-M33)高性能MCU与ARM V8M(KM0 兼容Cortex-M23)低性能MCU,大小核切换可以用于高性能处理与低功耗场景的应用

特性
    供电:3.3±5% V 512Kb SRAM可扩展4Mb PSRAM 支持2M Flash(可扩展) 支持 802.11a/b/g/n Wi-Fi 2.4GHz、5GHz 支持BLE 5.0 KM4核支持200MHz、KM0核支持20MHz USB Host/Device SD Host 最大支持54路GPIO PIN脚 支持SWD调试(使用IAR IDE开发)
系统架构

环境搭建

工程源码

使用官方开源的标准SDK,;官方提供了windows和Linux系统编译环境,其中windows环境下已经支持Cygwin和IAR

Windows系统
    在windows系统下,可以使用Cygwin作为GCC开发环境,; 安装时勾选make与bc工具
IAR工程项目

sdk已经集成了IAR的工程项目,IAR工程路径ambd_sdkproject ealtek_amebaD_va0_exampleEWARM-RELEASEProjectxx.eww

Linux系统
    Linux系统下同样需要安装工具 libc6-i386:GNU C库 lib32ncurses5:针对64位平台的32位终端处理 make:make工具 bc:bc math计算工具 gawk:文本替换工具 ncurses:应用在make menuconfig调取配置界面
编译
    以linux系统终端为例(cygwin同理),进入sdk中GCC工程目录,使用make进行编译;
//KM0
cd /{
          
   path}/ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp 
make all
//KM4
cd /{
          
   path}/ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_hp
make all
    编译镜像路径分别为 ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp/asdk/image/ ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_hp/asdk/image/
下载

使用sdk路径下ambd_sdk oolsAmebaDImage_Tool工具进行固件下载;

    使用模块的PA7(TX)、PA8(RX)进行烧录 复位前下拉PA7引脚进入下载模式,释放后会打印0x15(baud 115200) 第一次烧录需要进行一次全擦除

系统启动

    重新复位系统,打印如下日志,系统启动成功

MQTT例程

使能mqtt
    通过命令make menuconfig调取配置工具, 进入MQTT Config开启mqtt功能,退出后保存
MQTT例程配置
    代码路径example/mqtt/example_mqtt.c, 修改prvMQTTTask任务中的mqtt配置参数
connectData.MQTTVersion = 3;
connectData.clientID.cstring = "client";
char* address = "gpssensor.ddns.net";
char* sub_topic = "LASS/Test/Pm25Ameba/#";
char* pub_topic = "LASS/Test/Pm25Ameba/FT1_018";

运行测试

编译烧录固件后,启动系统,等待连接mqtt成功

通过客户端发送消息,可以看到接收到的订阅消息log

经验分享 程序员 微信小程序 职场和发展