登陆OneNET平台,注册账号,注册地址:https://open.iot.10086.cn/,之后进入开发者中心。选择如下图 所示的选项。
如图所示
比如产品类别啥的,都可以随便选的。
但是联网方式,一定要选择WiFi。
查看产品,在设备列表里面添加设备。
我自己使用的是正点原子的Mini开发板,所有使用的是正点的工程文件,但是并不影响移植到其它的板子上面。
创建一个文件夹,存放OneNET的代码
各个文件夹分别包含以下文件
使用的是AT指令连接的TCP,AT指令代码部分,更加详细的AT指令的使用可以在乐鑫官网上面找到,或者网上也有好多。
第一处需要修改的地方
第二处需要修改的地方,这三个信息都可以在OneNET开发者中心,自己创建的产品上面找到。
第三处需要修改的地方,创建一个应用就可以在手机APP控制了。
主函数代码:对于自己不需要的LCD屏幕显示代码,可以直接去掉就行。
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "lcd.h"
#include
#include "onenet.h" //网络协议层
#include "esp8266.h" //网络设备
void Net_Init()
{
ESP8266_Init(); //初始化ESP8266
while(OneNet_DevLink()) //接入OneNET
delay_ms(500);
LED0 = 0; //入网成功
}
int main(void)
{
unsigned char *dataPtr = NULL;
unsigned short timeCount = 300; //发送间隔变量
u8 value;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
delay_init(); //延时函数初始化
uart_init(115200); //串口1初始化为115200
Usart2_Init(115200); //串口2,驱动ESP8266用
LED_Init(); //初始化与LED连接的硬件接口
LCD_Init();
POINT_COLOR=RED;//设置字体为红色
LCD_ShowString(30,70,200,16,16,"NET Content...");
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);
}
POINT_COLOR=RED;
LCD_ShowString(30,40,200,24,24,"Mini STM32 ^_^");
LCD_ShowString(30,70,200,16,16,"oneNET TEST");
LCD_ShowString(30,90,200,16,16,"QingYeMuRong");
LCD_ShowString(30,110,200,16,16,"NET Succeed ");
//LCD_ShowString(30,110,200,16,16,lcd_id); //显示LCD ID
LCD_ShowString(30,130,200,16,16,"2020/7/26");
value = GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_2);
if(value==1)
{
LCD_ShowString(30,150,200,16,16,"LED1 OFF");
}
else
{
LCD_ShowString(30,150,200,16,16,"LED1 ON ");
}
}
}
设置属性,如果找不到数据流,先让设备运行一下,就能够看到数据流了。
"onoff"对应于代码里面的“onoff”。
对于旋钮,也是同样的设置方法,
界面如何构建,就看大家自己如何使用了。
设备云下载链接:https://open.iot.10086.cn/doc/art656.html#118
我自己上传的时候,设置的是0积分下载。
下载链接:https://download.csdn.net/download/weixin_45488643/12663417
最后希望能给个赞呗。