Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
CoreMQTT-Bibliothek
Anmerkung
Der Inhalt dieser Seite ist möglicherweise nicht. up-to-date Das neueste Update finden Sie auf der FreeRTOS.org-Bibliotheksseite
Einführung
Die CoreMQTT-Bibliothek ist eine Client-Implementierung des MQTT-Standards (Message Queue Telemetry Transport
Die CoreMQTT-Bibliothek entspricht dem MQTT 3.1.1-Protokollstandard.
Die Bibliothek ist in C geschrieben und so konzipiert, dass sie ISO C90 und MISRA C:2012
Die Standard-C-Bibliothek
Eine vom Kunden implementierte Netzwerktransportschnittstelle
(Optional) Eine vom Benutzer implementierte Plattformzeitfunktion
Die Bibliothek ist durch die Bereitstellung einer einfachen Spezifikation für die Sende- und Empfangsschnittstelle von den zugrunde liegenden Netzwerktreibern entkoppelt. Der Anwendungsautor kann je nach Anwendung eine vorhandene Transportschnittstelle auswählen oder eine eigene Schnittstelle implementieren.
Die Bibliothek bietet eine High-Level-API, um eine Verbindung zu einem MQTT-Broker, subscribe/unsubscribe zu einem Thema herzustellen, eine Nachricht zu einem Thema zu veröffentlichen und eingehende Nachrichten zu empfangen. Diese API verwendet die oben beschriebene Transportschnittstelle als Parameter und verwendet sie zum Senden und Empfangen von Nachrichten an und vom MQTT-Broker.
Die Bibliothek stellt auch eine serializer/deserializer Low-Level-API zur Verfügung. Diese API kann verwendet werden, um eine einfache IoT-Anwendung zu erstellen, die nur aus der erforderlichen Teilmenge der MQTT-Funktionalität besteht, ohne zusätzlichen Aufwand. Die serializer/deserializer API kann in Verbindung mit jeder verfügbaren Transport-Layer-API, wie Sockets, verwendet werden, um Nachrichten an und vom Broker zu senden und zu empfangen.
Bei der Verwendung von MQTT-Verbindungen in IoT-Anwendungen empfehlen wir, eine sichere Transportschnittstelle zu verwenden, z. B. eine, die das TLS-Protokoll verwendet.
Diese MQTT-Bibliothek hat keine Plattformabhängigkeiten wie Threading oder Synchronisation. Diese Bibliothek verfügt über Beweise
| Codegröße von CoreMQTT (mit GCC für ARM Cortex-M generiertes Beispiel) | ||
|---|---|---|
| Datei | Mit -O1-Optimierung | Mit -Os-Optimierung |
| core_mqtt.c | 4,0 K | 3,4 K |
| core_mqtt_state.c | 1,7 K | 1,3 K |
| core_mqtt_serializer.c | 2,8K | 2,2 K |
| Schätzungen insgesamt | 8,5 K | 6,9 K |