下载 FreeRTOS
 

出色的 RTOS & 嵌入式软件

最新资讯
简化任何设备的身份验证云连接。
利用 CoAP 设计节能型云连接 IoT 解决方案。
11.0.0 版 FreeRTOS 内核简介:
FreeRTOS 路线图和代码贡献流程。
使用 FreeRTOS 实现 OPC-UA over TSN。
左侧菜单提供了适用于学习使用 IoT MQTT 库的示例项目的链接。 另外,IoT 参考集成部分展示了集成到应用程序中的库。

coreMQTT
适用于小型 IoT 设备( MCU 或小型 MPU)的 MQTT C 客户端库

简介

coreMQTT 库是 MQTT 标准的客户端实现。MQTT 标准提供了一种轻量发布/订阅模式消息传输协议,该协议运行于 TCP/IP 之上,经常用于机器对机器 (M2M) 和物联网 (IoT) 用例。

coreMQTT 库与 MQTT 3.1.1 协议标准兼容。此库已经过优化,以减少内存占用。此库的设计涵盖了不同用例,例如,仅使用 QoS 0(0 级服务质量) MQTT PUBLISH 消息的一些资源受限平台,以及通过 TLS(传输层安全)连接使用 QoS 2 MQTT PUBLISH 的一些具有丰富资源的平台。该库提供了可组合函数的菜单,用户可以组合使用这些函数来精确地适配特定用例。

此库提供了一个高级 API,来连接 MQTT 代理、订阅或取消订阅主题、向主题发布消息和接收传入消息。该库还公开了一个低级序列化器/反序列化器 API。此低级 API 处理格式化和解析消息,让应用程序完全零开销地控制通向 MQTT 代理的网络连接。

该库通过双功能的发送和接收传输接口从基础网络驱动器中解耦。应用程序编写者可以选择现有的传输接口或实现其自己的接口,以适合其应用程序。

此库以 C 编写,设计符合 ISO C90MISRA C: 2012。除标准 C 库以外,该库不依赖于其他库。经证明此库可安全使用内存且不执行堆分配,适用于 IoT 微控制器,也可以完全移植到其他平台。

在 IoT 应用程序中使用 MQTT 连接时,我们建议您使用安全的传输接口,例如使用 TLS 协议的接口(如 MQTT TLS 演示所示)。

此库可免费使用,且根据 MIT 开源许可进行分发。

 

coreMQTT 的代码大小(ARM Cortex-M 的 GCC 生成的示例)
文件使用 -O1 优化使用-Os 优化
core_mqtt.c4.0K3.4K
core_mqtt_state.c1.7K1.3K
core_mqtt_serializer.c2.8K2.2 K
总估算8.5K6.9K
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.