首页 > 其他分享 >ESP8266透明串口转MQTT模块使用说明

ESP8266透明串口转MQTT模块使用说明

时间:2023-09-02 18:22:16浏览次数:54  
标签:... ESP8266 index void MQTT 模块 串口

ESP8266透明串口转MQTT模块使用说明

 

更新历史

日期

撰写

备注

2023.9.2

YTH

 

 

 

 

 

 

 

目录

1     模块功能... 2

2     串口驱动... 2

3     快速验证功能... 3

3.1     模块默认功能:... 3

3.2     手机开启热点... 3

3.3     云端查看... 3

3.4     串口调试器... 4

4     修改ESP8266参数... 4

4.1     硬件环境准备... 4

4.2     PC连接WIFI路由 “TTT01-xxxx”... 4

4.3     登录ESP8266. 5

4.4     配置参数... 5

5     MCU编程参考... 6

 

 

 


 

1    模块功能

在ESP-01S模块基础上进行了程序升级,串口数据直接转MQTT传输,支持OneNET,百度云,腾讯云等,无需关注AT指令集。

 
   

 

 

 

2    串口驱动

如果已经安装了CH340驱动程序,跳过本步骤。

 

参考连接。

https://www.wch.cn/videos/ch340.html

 

 
   


 

3    快速验证功能

3.1  模块默认功能:

1)Dev->模块->(onenet 或者 终端):

数据格式例如:  {“LED”:1}

 

2)(onenet 或者 终端) ->模块-> Dev:

主题例如:      cmd/mb

数据格式例如:  {“LED”:1}

 

3.2  手机开启热点

Ssid:easy

PWD:12345678

 

3.3  云端查看

1)登录OneNET

https://open.iot.10086.cn/passport/login/

用户名:R1XB67t5YWoSBF

密码:  @yan123456

 

2) 进入测试项目

https://open.iot.10086.cn/develop/mqtt/product/#/device/list?pid=614404

 

 

3.4  串口调试器

 
   


 

4    修改ESP8266参数

4.1  硬件环境准备

如果配置了模块手机热点(请关闭手机热点),如果配置了模块连接路由器(请断电路由器)。

 

4.2  PC连接WIFI路由 “TTT01-xxxx”

这个动作可能需要比较长的等待。

 

4.3  登录ESP8266

 

HTTP:192.168.4.1

 

 

 

 

 
   


 

4.4  配置参数

序号

参数名

备注

1

串口参数

9600,19200,38400,115200

n,8,1

默认8个数据位,1个停止位,无校验位。

2

路由网络

 

不用中文,不留空格

3

路由密码

 

8位及以上

4

远程主机

 

 

5

远程端口

 

OneNET 旧版的为6002

6

用户ID

 

参考各个云平台的要求。

7

用户名

 

8

用户密码

 

9

订阅主题

 

#为通配符

10

发布主题

 

没有通配符

11

心跳包

 

单位:毫秒

 

 

 

 

 

 

修改完参数,“保存参数”,模块会自动上电重启。

 

5    MCU编程参考

无需特殊操作,直接操控串口,注意数据格式为json格式。双引号要用转义字符“\”,例如Char  myData[]=”{\“led\”:1}”

以下以51单片机为例,说明如何编程。

1)      发布数据

 

void SendByte(unsigned char ch)

{

     SBUF=ch;

     While(TI==0);

     TI=0;

}

 

void Publish(char *strPlayload)

{

      char ch;

      While(1)

{

    ch= *(strPlayload++)

    if(ch==0)break;

    SendByte (ch)

}

}

 

void main(void)

{

while(1)

{

char  myData[]=”{\“led\”:1}”

Publish(myData)

}

 

}

 

 

 

2)      接收数据

 

#define MAX 100

unsigned char g_recvBuf[MAX];

int g_index;

int g_OldIndex;

 

void Recv Clear (void)

{

   g_index=0;

   g_OldIndex=0;

}

 

void usart_isr()interrupt 4

{

if(RI)

{

   if(g_index<MAX)

   {

       g_recvBuf[g_index++]=SBUF;

   }

   RI=0;

}

}

 

 

int Recv_Ok(void)

{

If(g_index>0)

{

   Delay(100);

   If(g_OldIndex!= g_index)

   {

       g_OldIndex= g_index;

       Return 1;

   }

   return 0;//100ms没有新数据接收,表示接收完成。

}

return 1;

}

void ProgFun()

{

//对g_recvBuf进行处理

 

}

 

void main(void)

{

Recv Clear ();

 

while(1)

{

    EA=1;

    ES=1;

    if(Recv_Ok()==0)

    {

        //接收数据处理。

        ProgFun();

        Recv Clear ();

    }

}

 

}

 

 

标签:...,ESP8266,index,void,MQTT,模块,串口
From: https://www.cnblogs.com/cqmcu/p/17674013.html

相关文章

  • esp8266 wifi模块的使用
      esp8266可以配置AP模式,和Station模式,AP就是我们平时所说的热点,Station则是前面说的连接AP的设备ESP8266还有第三种模式:AP+Station,即:将AP和Station的功能合二为一,但是应用的场景不多,这里不做展示。当ESP8266设置为AP模式时,其他设备可以接入该热点,最多支持4......
  • hal库中串口常用函数介绍
    串口常用函数介绍串口发送**/****接收函数:**HAL_UART_Transmit();串口发送数据,使用超时管理机制HAL_UART_Receive();串口接收数据,使用超时管理机制HAL_UART_Transmit_IT();串口中断模式发送HAL_UART_Receive_IT();串口中断模式接收HAL_StatusTypeDefHAL_UART_Transmit(UART_Ha......
  • MQTT协议
    1.MQTT协议介绍官网:http://mqtt.p2hp.com/MQTThttps://blog.csdn.net/weixin_36173034/article/details/1125110142.MQTT协议原理3.MQTT协议数据包结构Byte1:低4位MQTT消息质量QoS取决于发布者发布消息的Qos与订阅者订阅消息的Qos,取他们两者Qos最小的,即”木桶原理......
  • 编译qt mqtt模块
    0. 环境 win10,qt6.3.11.下载源代码  mqtt:  https://github.com/qt/qtmqtt, 找到对应的tag,比如:6.3.1, 然后下载.zip文件。  perl:   https://strawberryperl.com, 选64位下载。2.安装perl,安装完,在环境变量里加上perl的bin目录。如果不加,有可能qt......
  • 基于MQTT发布/订阅模式的物联网温度监测系统
    MQTT是一种轻量级的消息传输协议,主要用于物联网设备和应用程序之间的通信,是基于发布/订阅模式,具备灵活、安全、易于使用和可扩展等优点的物联网协议。 以下以物联网温度监测系统为例,来说明MQTT的发布/订阅模式。现有一个物联网温度监测系统,现场包括多个温度传感器和一个温度监测平......
  • (原创)解决串口上无登录提示符,无法登录的问题
    问题描述:      制作好rootfs后,kernel能够引导rootfs进入到系统,但是串口上最终却没有登入提示符。使用SSH或者Telnet可以登入系统。无法使用串口进行登录系统,使用起来不方便。问题分析:      对照启动流程梳理,发现所设置的运行级别为3下的所有启动脚本均已执行(rc3.d),......
  • 【STM32】5_1 串口通信 printf映射
    串口通信配置完成后,在主函数中添加stdio.h的头文件#include"stdio.h" 在主函数main()之前添加一下函数#ifdef__GNUC__#definePUTCHAR_PROTOTYPEint__io_putchar(intch)#else#definePUTCHAR_PROTOTYPEintfputc(intch,FILE*f)#endifPUTCHAR_PROTOTYPE{......
  • 嵌入式串口应用编程
    1.串口概述常见的数据通信的基本方式可分为并行通信与串行通信两种。并行通信是指利用多条数据传输线将一个字数据的各比特位同时传送。它的特点是传输速度快,适用于传输距离短且传输速度较高的通信。串行通信是指利用一条传输线将数据以比特位为单位顺序传送。特点是通信线路......
  • 封装Modbus串口通讯之SerialPort类
    前言C#为我们更好的与设备进行通讯,提供了SerialPort类于我们进行设备通讯,我们只需要将参数给与这个类并且实例化该类就可以通讯1usingSystem;2usingSystem.Collections.Generic;3usingSystem.Data;4usingSystem.IO.Ports;5usingSystem.Linq;6usingSys......
  • MQTT服务器的搭建与MQTT客户端的使用
    一、MQTT服务器(emqx)搭建1、下载MQTTBroker官方下载地址:emqx-5.0.4-windows-amd64.tar.gz。百度网盘地址emqx-windows-4.3.10.zip:链接:https://pan.baidu.com/s/1XaPkWTI_AtYmWVuMD8d5HQ?pwd=n99m提取码:n99m其他版本选择:https://www.emqx.io/downloads?os=Windows。 2.不用......