草庐IT

MQTT-ESP

全部标签

基于内核链表和JSON的MQTT的使用

一、内核链表1.回顾单链表的插入和遍历假设学生结构体信息如下,封装一个单链表的插入接口和遍历输出的接口,在主函数中利用封装的接口生成一个学生链表,并遍历输出链表的学生信息。#include#include#includestructstudent{ intage; charname[64];};structlist_node{ structstudentnode; structlist_node*next;};staticstructlist_nodehead;intinsert_head(structstudentdata){ structlist_node*new_node=(struct

ESP32 开启 Wi-Fi 热点与手机端 Iperf 测试 APP 来测试 ESP32 Wi-Fi AP 速率的流程

#测试需求:ESP32开启WiFiAP+Server模式手机连接ESP32WiFiAP热点通过手机端Iperf测试APP测试ESP32WiFi热点的Iperf速率测试用例:可以基于“esp-idf/examples/wifi/iperf”例程进行测试。ESP32设备下载Iperf例程后,开启WiFiAP模式和Server模式1、ESP32开启WifiAP模式apesp3212345678参数含义:ap表示开启WiFiAP模式;sta表示开启WiFiStation模式esp32和12345678分别代表ESP32开启WiFiAP模式的ssid和password如果ESP32需要设置为WiFiSt

ESP32 开启 Wi-Fi 热点与手机端 Iperf 测试 APP 来测试 ESP32 Wi-Fi AP 速率的流程

#测试需求:ESP32开启WiFiAP+Server模式手机连接ESP32WiFiAP热点通过手机端Iperf测试APP测试ESP32WiFi热点的Iperf速率测试用例:可以基于“esp-idf/examples/wifi/iperf”例程进行测试。ESP32设备下载Iperf例程后,开启WiFiAP模式和Server模式1、ESP32开启WifiAP模式apesp3212345678参数含义:ap表示开启WiFiAP模式;sta表示开启WiFiStation模式esp32和12345678分别代表ESP32开启WiFiAP模式的ssid和password如果ESP32需要设置为WiFiSt

【大厂必问】MQTT底层实现 | MQTT源码分析

MQTT底层实现|MQTT源码分析前言参考资料1.使用2.mqtt内部实现数据储存包的解析、发送ack回应订阅主题消息发送发布消息发送接收心跳包3.流程图结语前言同学面试大疆音视频驱动,问了很多Linux驱动细节和MQTT底层实现,被问麻了。我根据韦东山老师讲解MQTT的笔记补充和拓展了很多实现代码。(侵删)参考资料kawaii-mqtt源码:作者发布源码:https://github.com/jiejieTop/mqttclient大牛维护的:https://github.com/longtengmcu/kawaii-mqtt博客作者博客:你不得不看的图文并茂的MQTT协议通信过程!!!MQ

linux下搭建MQTT服务

目录前言一、MQTT协议二、搭建MQTT服务2.1下载依赖库2.2下载mosquitto源码2.3编译与安装2.4配置2.4.1使能mosquitto用户2.4.2新增mosquitto帐号2.4.3创建动态链接装载程序2.5启动mosquitto 三、订阅与发布3.1订阅主题3.2发布消息 总结前言        MQTT是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议。它最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。本次测试软

ESP32+ 继电器-控制交流电器(Web 服务器)

采用继电器配合esp32远程控制电灯的方法,继电器也可以改成多路继电器,这样单个esp32可以控制多个电器原件以下是esp32的io引脚,本文采用IO26作为信号输入 将继电器模块连接到esp32,如下图所示本例子中用的是一个继电器模块以下是实物的接线图,图中没有用AC接灯泡而是直接连接esp32的3.3v,仅做参考创建一个web网页的代码部分#include#includeconstchar*ssid="REPLACE_WITH_YOUR_SSID";constchar*password="REPLACE_WITH_YOUR_PASSWORD";WebServerserver(80);int

物联网协议NB-IoT,LORA,wifi,蓝牙,zigbee,MQTT,COAP之间的关系

按网络四层协议:NB-IoT,LORA,WIFI,蓝牙,zigbee,4G都是物理层的,这几个都需要芯片模组支持(硬件支持)而MQTT,COAP,HTTP都是应用层协议,这些需要开发服务器,或者对接云平台厂商(软件支持)所以(MQTT,COAP,HTTP)是居于(NB-IoT,LORA,WIFI,蓝牙,zigbee,4G)的上层协议物理层:不需要网关:NB-IoT,4G(芯片可以直接连上移动,联通,电信运营商)需要网关:LORA,WIFI,zigbee(不能直接连上电信运营商,需要通过一个网关中转才能连上电信运营商)蓝牙:比较特别,是两个蓝牙设备之间互联NB-IoT,4G对比:NB-IoT低功

物联网开发笔记(51)- 使用Micropython开发ESP32开发板之通过MAX98357 I2S音频模块播放音乐

一、目的       这一节我们学习如何使用我们的ESP32开发板来播放音乐。二、环境       ESP32+MAX98357I2S音频模块+ThonnyIDE+几根杜邦线接线方法:三、代码   代码1,播放wav格式文件:wav格式文件几百K,别太大ESP32存储空间有限。音频格式转换网站:在线转换音频文件frommachineimportI2S#导入I2S协议库,什么是I2S自行百度frommachineimportPin"""GPIO13--DINGPIO12---BCLKGPIO14--LRCGND--GND5V或3.3V--VCC"""#初始化引脚定义sck_pin=Pin(12)

物联网开发笔记(74)- 使用Micropython开发ESP32开发板之UART串口通信

一、目的       这一节我们学习如何使用我们的ESP32开发板来进行串口通信,使用串口实现数据收发。二、环境       ESP32+USB转TTL线(3.3V)+ThonnyIDE+几根杜邦线+Win10接线方法:        ESP32和USB转TTL线都接在电脑USB口上,USB转TTL线的Tx接ESP32P32,USB转TTL线的Rx接ESP32P33,USB转TTL线的GND接ESP32GND。串口通信只需要3根线即可。三、代码       ESP32开发板有3个硬件UART,分别是UART0,UART1,UART2,它们每个都分配有默认的GPIO,如下:        构造函

【ESP32】18.舵机实验(Servo库)

上一篇:【ESP32】17.DS1302实时时钟模块实验(ThreeWire库/RtcDS1302库)前言:先放电路连接图:角度舵机是可以在0~180度之间的任意角度运行,对于很多嵌入式项目,比如智能垃圾桶,机器人等都有应用。正文:1.知识点:#includeArduino专门为了esp32推出的servo库,用来操作伺服舵机Servomyservo; 实例化一个舵机对象myservo.setPeriodHertz(50);设置舵机频率为50hzmyservo.attach(servoPin,500,2400); 设置控制脉冲范围为500~2400us,这个得根据具体的舵机来控制myservo