本帖最后由 18295859538 于 2020-7-25 20:43 编辑
材料: STM32F103C8T6最小系统板,ESP826601S,大功率MOS管,轻触按键实验步骤:
1、注册OneNET账号,进入开发者中心
2、创建产品、设备,并记录产品ID、设备ID、设备鉴权信息
3、修改代码中的产品ID、设备ID、设备鉴权信息
4、编译烧录程序
5、查看设备是否连接OneNET
6、创建并编辑应用
7、下载设备云就可以用手机控制设备
视频链接:https://www.bilibili.com/video/BV1y54y1q7uT/
单片机源程序如下:
- //C库
- #include <string.h>
- //单片机头文件
- #include "sys.h"
- //网络协议层
- #include "onenet.h"
- //网络设备
- #include "esp8266.h"
- //硬件驱动
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- //硬件初始化
- void Hardware_Init(void)
- {
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
-
- delay_init(); //延时函数初始化
-
- Usart1_Init(115200); //串口1初始化为115200
- Usart2_Init(115200); //串口2,驱动ESP8266用
- LED_Init(); //LED初始化
- }
- void Net_Init()
- {
- ESP8266_Init(); //初始化ESP8266
-
- while(OneNet_DevLink()) //接入OneNET
- delay_ms(500);
- LED = LED_ON; //入网成功
- }
- int main(void)
- {
- unsigned char *dataPtr = NULL;
- unsigned short timeCount = 300; //发送间隔变量
-
- Hardware_Init(); //初始化外围硬件
- Net_Init(); //网络初始化
- while(1)
- {
- delay_ms(10);
- timeCount ++;
-
- if(timeCount >= 300) //发送间隔
- {
- OneNet_SendData(); //发送数据
-
- timeCount = 0;
- ESP8266_Clear();
- }
-
- dataPtr = ESP8266_GetIPD(0);
- if(dataPtr != NULL)
- {
- OneNet_RevPro(dataPtr);
- }
- }
- }
复制代码
所有资料51hei提供下载:
STM32接入OneNET.7z
(194.71 KB, 下载次数: 337)
|