文章目录
- 一. 准备工作
- 二. 通过STM32代码设置产品model
- 三. STM32单片机不断发送get_down指令一直查询模块返回的状态
- 四. 模块核心指令的解答
- 五. 关于模块返回的参数说明
最近在做一个需要通过米家APP进行智能插座的项目,为了方便直观的看到插座的开和关的状态,这里使用了STM32板子上的一个LED灯,利用LED灯的亮和灭表示插座的开和关的状态
一. 准备工作
务必清楚,博文涉及到的账号均为 企业入驻,暂不支持个人对接米家平台,请知晓!!
所需要的资料:这里分软件部分和硬件部分
硬件部分如图:
一个下载STM32代码的J-Link烧录器,一个STM32开发板,一个NodeMcu8266开发板(烧录好米家透传固件),一个USB转TTL串口板(用于查看串口打印信息)杜邦线若干
软件部分:
一个串口调试助手,一个已经搭建好Keil5环境的电脑,公司所提供的的烧写好米家固件的8266模块样品,一台安装米家APP的安卓手机;
准备工作做完后,根据以下主要接线图方式去接线
MCU | NodeMcu | USB转TTL串口板 |
---|---|---|
VCC | 3V3 | / |
GND | GND | / |
PA2(TXD) | D7(RXD2) | / |
PA3(RXD) | D8(TXD2) | / |
PB10 | / | RXD(用于查看串口打印信息) |
实物接线如下图:
二. 通过STM32代码设置产品model
核心代码说明如下,首先单片机上电需要先设置好产品的model号,这个通过单片机发送设置model指令,具体可以看如下代码说明
产品的model号可以在小米开发者平台上您的这个产品进行查询获取!
三. STM32单片机不断发送get_down指令一直查询模块返回的状态
用单片机设置完成后需复位重启一下模块,重启后用查询model指令查询到是你所需要的model号代表设置成功!
下一步打开米家APP进行配网,单片机不断发送get_down指令查询模块返回的状态,当模块返回“down MIIO_net_change cloud”则代表模块已经成功配网连接上米家平台,接下来就可以用手机愉快的控制开发板上的LED灯了,核心指令请看下一章节!
四. 模块核心指令的解答
指令 | 指令返回的状态信息 | 说明 |
---|---|---|
model | ok | 产品model通过MIOT平台创建产品申请 |
get_down | down(method_name) | 获取下行指令 |
result | ok或error | 发送下行指令的执行结果,按下行指令不同的情况返回 |
restore | ok | MIIO接收到该命令后,将清除wifi配置信息,并在0.5秒内重启 |
reboot | ok | MIIO接收到该命令后,将在0.5秒内重启 |
五. 关于模块返回的参数说明
- Q1:down set_properties 2 1 true其中的2和1具体代表什么?
答:这里的2代表产品功能中的switch服务编号,1代表服务编号中的属性,具体可以查看如下截图