代码编织梦想

设备:esp8266开发板

库文件:

#include <WiFiManager.h> //自动配网库

#include <PubSubClient.h>//MQTT支持库

#include <ESP8266WiFi.h>//ESP8266支持库

步骤一: 巴法科技&巴法云-巴法设备云-巴法物联网云平台巴法设备云,一站式物联网云平台解决方案icon-default.png?t=N7T8https://bemfa.com/

 注册账号并创建 MQTT主题:

MQTT连接源码: 

#include <WiFiManager.h> // 包含WiFi管理器库
#include <PubSubClient.h> // 包含用于MQTT的PubSubClient库
#include <ESP8266WiFi.h> // 包含ESP8266 WiFi库

// 定义WiFi Manager对象
WiFiManager wifi;
// MQTT服务器的地址和端口
const char* mqttserver = "bemfa.com";
const int prot = 9501;
// 定义WiFi客户端对象
WiFiClient ClientA;
// 定义PubSubClient对象
PubSubClient ClientB(ClientA);

void setup() {
  // 初始化串口通信
  Serial.begin(9600);
  // 设置MQTT服务器和端口
  ClientB.setServer(mqttserver, prot);
  Serial.println("");
  // 自动连接WiFi
  wifi.autoConnect("路由名");//当连接失败可用于ap配网名
  //wifi.autoConnect("路由名","密码");//直接连接
  // 等待连接完成
  delay(2500);
  if (WiFi.status() == WL_CONNECTED) {
    // 打印本地IP地址
    Serial.println(WiFi.localIP());
  } else {
    // 如果没有连接到WiFi,打印错误信息并等待
    delay(2500);
    if (WiFi.status() != WL_CONNECTED) {
      Serial.println("Failed to connect to Wi-Fi!");
    }
  }
}

void loop() {
  // 等待10毫秒
  delay(10);
  // 如果MQTT客户端已连接,则执行循环
  if (ClientB.connected()) {
    // 循环处理MQTT消息
    ClientB.loop();
  } else {
    // 尝试连接到MQTT服务器
    connectMQTTServer();
  }
  // 等待1秒钟
  delay(1000);
}

// 连接到MQTT服务器的函数
void connectMQTTServer() {
  // 客户端ID
  String clientId = "连接标识,你的密匙";
  
  // 使用clientId连接到MQTT服务器
  if (ClientB.connect(clientId.c_str())) {
    // 延迟200毫秒
    delay(200);
    // 如果状态为0(已连接)并且订阅了"MQTT"主题,则打印连接成功的消息
    if (ClientB.state() == 0 && ClientB.subscribe("MQTT")) {
      Serial.println("Connected successfully!");
    }
    
  } else {
    // 打印连接失败的消息
    Serial.println("Failed to connect!");
  }
  
}

 TCP连接

 TCP   连接源码:

 

#include <WiFiManager.h>  // 包含WiFi管理库

#include <ESP8266WiFi.h>  // 包含ESP8266 Wi-Fi库

// 定义Wi-Fi和TCP相关常量
const char* mqttserver = "bemfa.com"; // TCP服务器地址
const int prot = 8344;               // TCP服务器端口
WiFiClient ClientA;                 // 创建一个WiFi客户端对象


void setup() {
  Serial.begin(9600);                // 开始串行通信

  Serial.println("");
  wifi.autoConnect("路由器名");     // 自动连接Wi-Fi网络
  delay(2500);                     // 等待2.5秒,以便Wi-Fi稳定连接
  if (WiFi.status() == WL_CONNECTED) {
    // 如果Wi-Fi已连接
    Serial.println(WiFi.localIP()); // 打印本地IP地址
  } else {
    // 如果Wi-Fi连接失败
    delay(2500);                   // 再等待2.5秒
    if (WiFi.status() != WL_CONNECTED) {
      Serial.println("联网失败!"); // 打印错误消息
    }
  }
}

void loop() {
  delay(10);                       // 延时10毫秒
  
    connectTCPServer();            // 调用函数连接TCP服务器
  
  delay(1000);                    // 每秒执行一次循环
}

// 函数定义:连接TCP服务器
void connectTCPServer() {
  // 预定义主题字符串
  char topic[100] = "cmd=1&uid=填入你的密匙&topic=MQTT\r\n";
  
  // 使用之前定义的WiFi客户端连接到TCP服务器
  if (ClientA.connect(mqttserver, prot)) {
    // 如果连接成功
    ClientA.print(topic);         // 向服务器发送主题字符串
    delay(200);                  // 短暂延时
    Serial.println("连接成功!");   // 打印成功信息
  } else {
    Serial.println("连接失败!");   // 如果连接失败,打印错误信息
  }
}

连接成功 

官方帮助文档: 

MQTT 

简介 | 巴法文档中心巴法1.0文档中心icon-default.png?t=N7T8https://cloud.bemfa.com/docs/src/mqtt.html

 TCP

简介 | 巴法文档中心巴法1.0文档中心icon-default.png?t=N7T8https://cloud.bemfa.com/docs/src/tcp.html 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43422073/article/details/139795606

Esp8266(NodeMCU)使用MQTT连接巴法云服务器-爱代码爱编程

Esp8266【NodeMCU】使用MQTT连接巴法云服务器 注册巴法云账号Esp8266代码MQTT连接界面测试   使用MQTT连接巴法云服务器 https://cloud.bemfa.com/,并且使用DS13B20温度传感器上传温度数据。需要下载安装MQTT.fx。MQTT下载地址 http://mqttfx.org/下载后直接安装。 完

8266通过mqtt与巴法云平台建立联系(示例程序-爱代码爱编程

先看完整代码  /* Time:20210328 Author: 巴法科技 QQ群:824273231 项目示例:通过发送on或off控制开关,温湿度上传 */ #include <ESP8266WiFi.h>//默认,加载WIFI头文件 #include "PubSubClient.h"//默认,加载MQTT库文件 #in

ESP8266对接巴法云平台实现小爱同学控制开关灯-爱代码爱编程

原理:esp8266连接巴法云平台mqtt服务并订阅主题,通过小爱语音发出指令,相当于mqtt的消息推送,从而进行控制esp8266 。 1. 巴法云平台创建MQTT设备云主题 在控制台新建mqtt设备云主题,字母+数字自定义组合即可。 现在支持的设备有:灯泡、插座、风扇、传感器设备。设备类型由创建的主题名称后三位决定: 当主题名字后三位是001时为插

esp8266 连接巴法云_qq_30895747的博客-爱代码爱编程

ESP8266代码 /* * 智能语言控制控制,支持天猫、小爱、小度、google Assistent同时控制 * 2021-08-12 * QQ交流群:566565915 * 官网https://bemfa.com */ #include <ESP8266WiFi.h> #include <WiFiManager.h>

stm32通过esp8266连接wifi接入mqtt服务器-爱代码爱编程

上文我们讲到如何搭建本地MQTT服务器,现在介绍如何通过stm32连接MQTT 一.首先我们初始化esp8266这里我们使用的是USART4与其通信代码如下 void UART4_Init(uint32_t bound) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_I

(2)基于巴法云+mqtt+微信小程序控制esp8266点灯_巴法云小程序-爱代码爱编程

目录 1、wifi配置指令表 2、连接连接wifi网络 3、连接巴法云MQTT         (1)配置用户属性AT+MQTTUSERCFG                 ① 命令格式:                 ② 命令参数:                 ③ 实际配置方式:         (2)配置ESP 设备连接的

(1)基于巴法云+mqtt+微信小程序控制esp8266点灯-爱代码爱编程

    ESP-AT 是乐鑫开发的可直接用于量产的物联网应用固件,旨在降低客户开发成本,快速形成产品。通过 ESP-AT 指令,您可以快速加入无线网络、连接云平台、实现数据通信以及远程控制等功能,真正的通过无线通讯实现万物互联。     ESP-AT 是基于 ESP-IDF 或 ESP8266_RTOS_SDK 实现的软件工程。它使 ESP 模组作为从机