赞
踩
首先要确定接线图和接线顺序:
1、stm32c8t6开发板连接stlinkv2下载线
ST-LINK V2 | STM32 |
---|---|
3.3V | 3.3V |
SWDIO | SWIO |
SWCLK | SWCLK |
GND | GND |
2、ch340串口连接底座(注意RXD和TXD的连接方式)
CH340 | 底座 |
---|---|
3.3V | 3.3V |
RXD | TXD |
TXD | RXD |
GND | GND |
3、https://open.iot.10086.cn/console/device/manage/devs
在onenet官网创建设备,名字地区随便写,创建成功后点击设备详情页面
4、产品开发栏进行添加属性
附上main.c一部分代码文件
//单片机头文件 #include "stm32f10x.h" //网络协议层 #include "onenet.h" //网络设备 #include "esp8266.h" //硬件驱动 #include "delay.h" #include "usart.h" #include "led.h" #include "key.h" #include "dht11.h" #include "oled.h" //C库 #include <string.h> #define ESP8266_ONENET_INFO "AT+CIPSTART=\"TCP\",\"mqtts.heclouds.com\",1883\r\n" void Hardware_Init(void); void Display_Init(void); void Refresh_Data(void); u8 temp,humi; /* ************************************************************ * 函数名称: main * * 函数功能: * * 入口参数: 无 * * 返回参数: 0 * * 说明: ************************************************************ */ int main(void) { unsigned short timeCount = 0; //发送间隔变量 unsigned char *dataPtr = NULL; Hardware_Init(); //初始化外围硬件 ESP8266_Init(); //初始化ESP8266 // UsartPrintf(USART_DEBUG, "Connect MQTTs Server...\r\n"); OLED_Clear(); OLED_ShowString(0,0,"Connect MQTTs Server...",16); while(ESP8266_SendCmd(ESP8266_ONENET_INFO, "CONNECT")) DelayXms(500); // UsartPrintf(USART_DEBUG, "Connect MQTT Server Success\r\n"); OLED_ShowString(0,4,"Connect MQTT Server Success",16); DelayXms(500); OLED_Clear(); OLED_ShowString(0,0,"Device login ...",16); while(OneNet_DevLink()) //接入OneNET { ESP8266_SendCmd(ESP8266_ONENET_INFO, "CONNECT"); DelayXms(500); } OneNET_Subscribe(); Display_Init(); while(1) { if(++timeCount >= 100) //发送间隔5s { DHT11_Read_Data(&temp,&humi); // UsartPrintf(USART_DEBUG, "OneNet_SendData\r\n"); OneNet_SendData(); //发送数据 timeCount = 0; ESP8266_Clear(); } dataPtr = ESP8266_GetIPD(0); if(dataPtr != NULL) OneNet_RevPro(dataPtr); Refresh_Data(); DelayMs(10); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。