[PSOC™] 【英飞凌 CY8CKIT-062S2-AI评测】Mqtt远程交互

[复制链接]
16|0
lulugl 发表于 2025-11-17 18:13 | 显示全部楼层 |阅读模式
【前言】

mqtt在互联网方面是提供非常好的解决联网方案,他的轻量级的协议,以及可以实现一对多,多对多等优秀的解决方案,相经TCP要简单得多。这一篇将分享如何实现mqtt的数据交互。
【工程创建】
1、打开ModusToolbox创建一个基于CY8CKIT-062S2-AI的mqtt工程。

【上网配置】
1、配置wifi,我们需要把我们的路由器名称和密码写入wifi_config.h中
  1. /* SSID of the Wi-Fi Access Point to which the MQTT client connects. */
  2. #define WIFI_SSID                         "MY_WIFI_SSID"

  3. /* Passkey of the above mentioned Wi-Fi SSID. */
  4. #define WIFI_PASSWORD                     "MY_WIFI_PASSWORD"
2、mqtt的连接服务器IP与端口号:
在mqtt_client_config.h中
  1. #define MQTT_BROKER_ADDRESS               "test.mosquitto.org"
  2. #define MQTT_PORT                         1883
我为了试验方便,在我的本地电脑端创建了一个emqtt服务端,我们就可以把本地的ip填好就行了。
配置好这些参数据,编译下载到开发板。
打开串口终端看到我成功的连接上路由器,并连接上了我们的emqtt的服务器:
  1. Successfully connected to Wi-Fi network 'HUAWEI-H10R9U'.
  2. IPv4 Address Assigned: 192.168.3.126


  3. MQTT library initialization successful.

  4. 'psoc6-mqtt-client19157' connecting to MQTT broker '192.168.3.180'...
  5. MQTT connection successful.

  6. MQTT client subscribed to the topic 'ledstatus' successfully.

  7. Press the user button (SW2) to publish "TURN ON"/"TURN OFF" on the topic 'ledstatus'...

再打一个mqtt调试工具。然后通过服务器上,成功看到了连接成功:


【测试】
我们使用mqttx订阅一个ledstatus的主题,按下开发板上的SW2按键,可以看到调试助手接收到了消息:

我们在MQTTx上发布ledstatus的TURN ON与TURN OFF,就可以实现远程关闭或开启开发板上的LED灯。

【总结】

CY8CKIT-062S2-AI提供了MQTT的示例,我们可以在他的工程上非常轻松的实现MQTT的订阅与发布,同时也可以远程接收到开发板的工作状态。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

194

主题

862

帖子

12

粉丝
快速回复 在线客服 返回列表 返回顶部