物联网 温湿度上传onenet

串口调试助手的结果图如下

onenet上连接结果如下

main.c 函数核心代码如下

步骤

①先初始化mqtt ②connect mqtt ③publish

cs 复制代码
#include "sys.h"
#include "delay.h"
#include "led.h"
#include "uart1.h"
#include "dht11.h"
#include "esp8266.h"
#include "onenet.h"


int main(void)
{
    HAL_Init();                         /* 初始化HAL库 */
    stm32_clock_init(RCC_PLL_MUL9); /* 设置时钟, 72Mhz */
    led_init();
    uart1_init(115200);
    esp8266_init(115200);
    printf("hello world!\r\n");
    
    printf("MQTT初始化...\r\n");
    mqtt_init();
    
    printf("MQTT连接...\r\n");
    mqtt_connect(MQTT_ClientID,MQTT_UserName,MQTT_PassWord);  //第一个参数为客户端标识符(设备名) 第二个参数为用户名(产品名) 第三个参数为密码(token)
    
    uint8_t data_send[512] = {0};
    uint8_t dht11_data[4] = {0};
    while(1)
    { 
        memset(dht11_data,0,4);
        dht11_read(dht11_data);
        sprintf((char *)data_send,"{\"id\":\"1386772172\",\"version\":\"1.0\",\"params\":{\"CurrentTemperature\":{\"value\":%d.%d},\"CurrentHumidity\":{\"value\":%d.%d}}}",dht11_data[2],dht11_data[3],dht11_data[0],dht11_data[1]);
        
        mqtt_publish_data(POST_TOPIC,(char *)data_send,0);
        delay_ms(3000);
        printf("\r\n ^^^^^^^^^^^^^^^^^^^^发送心跳包^^^^^^^^^^^^^^^^^^^^\r\n");
        mqtt_send_heart();
        printf("\r\n ^^^^^^^^^^^^^^^^^^^^发送心跳包结束^^^^^^^^^^^^^^^^^^^^\r\n");
        

    }
}


  

主要更改的代码部分时宏函数

①onenet.h 的宏函数更改

②esp8266.h宏函数定义

相关推荐
GCKJ_08242 小时前
观成科技:利用DoH加密通信的恶意木马流量分析
网络
zjun10013 小时前
TCP专栏-1.TCP协议概念说明
网络·网络协议·tcp/ip
德迅云安全杨德俊3 小时前
DDoS 解析与防御体系
网络·安全·web安全·ddos
国科安芯4 小时前
商业航天电机控制领域抗辐射 MCU 芯片应用研究
网络·单片机·嵌入式硬件·安全性测试
Lentou4 小时前
日志轮询策略
linux·服务器·网络
星融元asterfusion4 小时前
如何为您的网络选择正确的PTP配置文件:一份实用指南
网络·ptp·时间同步
光路科技4 小时前
一文讲透DHCP Snooping:从原理到工业网络实践
网络
电子科技圈4 小时前
芯科科技在蓝牙亚洲大会展示汽车与边缘AI前沿蓝牙创新技术, 解锁车用、家居、健康及工商业等应用场景
人工智能·科技·嵌入式硬件·mcu·物联网·网络安全·汽车
三佛科技-134163842125 小时前
PD65W快充电源方案LP8841SD+LP35118N(高频QR反激、BOM简洁,小体积,过认证)
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
威联通安全存储5 小时前
穿透宿主机内核:QNAP Virtualization Station 硬件直通解析
网络·nas