如何在STM32F030K6T6上实现MQTT?


15

所涉及的控制器是STM32F030K6T6,它具有ARM®32位Cortex®-M0低功耗内核,32 kB闪存和4 kB SRAM。它与SIM808接口以实现Internet连接。

关于内存的资源非常有限。

  • 是否可以在此设备上实现MQTT?

  • 微控制器应匹配哪些要求才能使用/运行MQTT?

(我并不是在问完整的协议栈实现。)

Answers:


12

是否可以在此设备上实现MQTT?

任何具有TCP / IP层的设备都可以实现MQTT。

微控制器应匹配哪些要求才能使用/运行MQTT?

您需要询问以下问题,以了解您的设备是否运行MQTT。

  • 我的设备是否具有TCP / IP或网络支持?
  • 设备上是否有可用的内存和磁盘空间?
  • 是否可以在设备平台上使用现成的MQTT客户端?
  • 是否与服务器建立网络连接?

参考:MQTT支持


1
然后问题归结为:您可以使用32 kB代码存储器吗?
加尼玛'16

1
@Ghanima,我可以说不,但是我想概述一下运行MQTT所需的硬件。
bravokeyl

3
有一个用于Arduino的MQTT库:github.com/256dpi/arduino-mqtt,内存不足
Goufalite

它需要的最小内存大小是多少?
bravokeyl

3
Eclipse Paho项目具有一个嵌入式C客户端,该客户端非常轻巧但也非常灵活:github.com/eclipse/paho.mqtt.embedded-c。也许值得一瞧。
jpwsutton

11

mbed mmqt库似乎没有记录任何可能限制的内存需求,并且可以合理地假定以此类小型内存设备为目标。您可以使用在线编译器轻松地将库导入类似的设备平台,并至少检查代码占用量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.