基于STM32实现mqtt与uniapp的联动
温馨提示:
本文最后更新于 2025年11月25日,已超过 14 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
一、项目简介
项目使用的芯片有STM32F103ZET6,网络使用的有线网w5500,该芯片使用的SPI接口。
程序框架使用的是STM32的hal库,片上外设使用到的SPI2,GPIO PG9和PD9作为w5500的片选和RST的触发引脚。
mqtt服务器选择的EMQX,EMQX基于linux安装的教程比较多,我忘记我参考的什么了。
app作为上位机使用的uniapp上vue2版本的项目,使用的mumu模拟器。
二、实现功能
通过app发送mqtt的消息,stm32通过w5500使用mqtt进行接收。
w5500的移植参考芯片提供的列程。
uniapp使用的mqtt3.0.0。
mqtt链接成功后在EMQX中可以看到当前的连接。

三、问题记录
MQTT心跳超时问题。
uniapp那里由于mqtt3.0.0和vue3项目冲突出现白屏,项目修改为vue2之后正常。
这个博客网站MP4视频没办法播放,由于编码格式不一样,H264和H265编码存在差异修改了nginx的配置。
由于代码实现内容较多这里不放了,代码我放到gitee上了 https://gitee.com/lijunze94/bldc-montor,感兴趣的可以看下 。
如果有拉去了项目的,这里改成自己mqtt服务器的信息。
#ifndef __MQTT_H_
#define __MQTT_H_
// MQTT Connection Configuration
#define MQTT_SERVER_IP {192, 168, 31, 70}
#define MQTT_CLIENT_ID "ljz_test"
#define MQTT_USERNAME "mqtt_t"
#define MQTT_PASSWORD "YOU_PASSWORD"
#endif最后的记录一下
正文到此结束
- 本文标签: 其他
- 本文链接: https://lijunze.me/article/3
- 版权声明: 本文由泽原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权