ML307R 模组软件及硬件调试环境搭建

本文由 简悦 SimpRead 转码, 原文地址 triot.blog.youkuaiyun.com

软件及硬件调试环境搭建

1、 软件环境搭建及编译

a) 打开官方 SDK,内涵 APP-DEMO,通过 vscode 打开程序,
    软件程序编写及编译参考下边说明文档链接

OneMO 线上服务平台

    编译需预安装 python3.7 以上版本,安装完 python 后,打开命令行执行 pip install scons 安装 scons 工具。详细编译环境搭建请参考

    在 SDK 根目录下,先执行 scons -c 清除历史编译信息,再执行相应编译命令启动编译。

编译命令

测试函数名

scons

编译 custom 用户层代码

scons -c

清除编译历史编译信息

scons demo=y

编译标准代码中的 demo 即 examples 中的 demo

scons app_demo=y

编译 app_demo 中的代码,即本文提到的 demo

    打开 vscode 软件的终端,既可以输入上述执行编译的指令。

    scons app_demo=y 执行编译,编译成功后固件在 out/image / 目录下。

2、 调试硬件链接

a) 调试用串口链接
    这里介绍程序调试调试过程中,程序中预埋的 log 日志的输出位置和硬件链接方式,

程序设置调试输出接口

    程序预埋 log 日志输出函数例子

    链接串口 --DBG-UART 串口,波特率:115200。

    硬件链接如下图(该图片引用自中移物联官方资料,由于我的如意控主板还没有制作出来,期待中!!)

3、 程序下载

  1. 通过 USB 线将装有模组的设备或开发板连接到 PC,保持模组上电;

  1. 打开固件烧录工具 aboot.exe;

  1. 点击主界面的查找按钮;

  1. 在弹出的对话框中,选择需要烧录的固件文件;

  1. 点击主界面的 “start” 按钮,进入下载界面;

    注意:此时需要点击模组的 “reset” 复位按钮,程序才会自动烧录。
  1. 按下模组上的 “RESET” 按钮,启动模组升级固件;

  1. 升级结束后,点击 “Back” 按钮后重启模组;

  1. 模组重新启动后,通过 AT+CGMR 读取软件版本号、AT+CMVERSION 读取固件编译日期,确认固件烧录成功。

    程序下载成功!!

    DUG-uart 串口的 log 日志输出正常:

4、 程序 API 文档

    程序 SDK 应用 API 接口文档查询软件位置

    链接位置:ML307R_OpenCPU_Standard_1.1.0.24053111_release\docs\ML307R_OpenCPU_API 手册. chm

    该软件可以搜寻 API 接口文档,打开后为如下图所示:

程序编写前环境搭建成功!!期待下一期的程序调试顺利!!

### ML307R 模组 AT 指令 MQTT 配置方法 ML307R 模组是一款功能强大的物联网通信设备,支持通过 AT 指令配置网络参数并实现与 MQTT 平台的连接。以下是基于现有资料整理的关于如何使用 AT 指令完成 ML307R 模组与 MQTT 的配置过程。 #### 1. 初始化模组 在开始之前,确保 MCU 或主机已成功初始化 ML307R 模组并通过串口与其建立通信。通常可以通过发送 `AT` 命令来验证模组是否正常工作: ```plaintext AT ``` 如果返回 `OK` 则表示模组处于可操作状态[^1]。 #### 2. 设置 APN 参数 为了使模组能够接入蜂窝网络,需设置运营商指定的 APN 参数。例如: ```plaintext AT+CGDCONT=1,"IP","your_apn" ``` 其中 `"your_apn"` 应替换为目标运营商的实际 APN 名称。完成后可通过以下命令查询当前配置: ```plaintext AT+CGDCONT? ``` #### 3. 连接至目标服务器 启动数据连接前,先确认模组已经附着到网络上: ```plaintext AT+CREG? ``` 当返回值显示为 `(0,1)` 或 `(0,5)` 时表示模组已注册到网络中[^2]。 随后可以尝试激活 PDP 上下文以获取 IP 地址: ```plaintext AT+QIACT=1 ``` #### 4. 配置 MQTT 客户端信息 定义用于访问 MQTT Broker 的客户端 ID 和其他必要属性。例如设定用户名密码(如果有认证需求的话)以及保持活动时间间隔等选项。 ```plaintext AT+QMTCFG="clientid",0,"UniqueClientIDString" AT+QMTCFG="username",0,"mqtt_username" AT+QMTCFG="password",0,"mqtt_password" AT+QMTCFG="keepalive",0,60 ``` 上述命令分别设置了客户端标识符、登录凭证和心跳超时秒数。注意这里的索引号 (`0`) 表明这是针对第一个会话实例的操作;实际应用可能涉及多个并发链接,则需要调整该数值相应匹配不同上下文中使用的具体编号。 #### 5. 开启 MQTT 服务并与代理握手 一旦所有前期准备工作就绪之后就可以正式开启 MQTT 协议栈并向选定的目标地址发起订阅请求或者发布消息了。下面展示了一个典型的过程演示: ##### (a). 启动 MQTT 会话 ```plaintext AT+QMTOPEN=0,"broker.hivemq.com",1883 ``` 此步创建一个新的 MQTT session 对象指向公网上的 HiveMQ 测试 broker,默认监听标准端口号 1883 不加密传输模式下运行的服务端点位置。 ##### (b). 发布一条测试主题的消息 假设我们想往名为 `/test/topic` 下推送一段字符串内容作为初次试验用途,那么执行如下语句即可达成目的: ```plaintext AT+QMTPUB=0,0,0,0,"/test/topic" Hello from ML307R! ``` 这里四个零依次代表 QoS level(服务质量等级), retain flag(保留标志位开关状态),duplication indicator(重复指示器启用情况) 及 topic name length(topic 主题名称长度). 最后一步就是关闭本次交互周期结束后的清理动作: ```plaintext AT+QMTDISC=0 ``` 以上即构成了完整的利用 AT Command Set 实现基础版 MQTT 功能调用流程概述. ### 注意事项 - 所有涉及到敏感信息安全保护措施均应妥善处理好相关细节部分以免泄露重要隐私资料给未经授权第三方人员知晓. - 根据实际情况灵活修改各项默认参数取值范围直至满足特定业务逻辑场景下的特殊定制化需求为止.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值