一、机智云MCU(STM32F103C8T6)函数移植
1.下载函数库
2.解压函数库
3.文件复制粘贴
(1)Gizwits文件夹中的文件说明
gizwits_product.c :产品处理.c文件,用户需要对该文件里面的部分.c文件进行完善和修改,以实现功能
gizwits_product.h :包含软硬版本等信息,一般无需修改
gizwits_protocol.c:协助相关处理.c文件,完成和WIFI模块的通信协议解析,提供SDK API接口函数,无需修改
gizwits_protocol.h:定义结构体、产品密钥、声明相关API函数,一般无需修改
(2)Utils文件夹中的文件说明
4.函数移植
(1)头文件添加
(2)添加部分代码
定时器的函数添加
串口中断的函数添加
gizwits_product.c文件函数添加添加
(3)部分代码注释
注释掉与HAL库有关的代码
从260-338行代码注释掉
这里照着图片修改一下
(4)main.c
注意:按键配网要添加
#include "sys.h"
#include "bmp.h"
#define AirLink_KEY PAin(2)
#define SoftAP_KEY PAin(7)
void Gizwits_Init(void)
{
TIM3_Init(9,7199);//1ms
My_USART1(); //9600串口
memset((uint8_t*)¤tDataPoint, 0, sizeof(dataPoint_t));
gizwitsInit();
printf("同胜毅");
}
int main(void)
{
// My_USART1(); //串口1初始化
delay_init(); //滴答定时器初始化
LED3_GPIO_Config();//三色灯初始化
KEY_GPIO_Config();//按键初始化
Gizwits_Init();
while(1)
{
if(DHT_Read())
{
printf("温度:%d\r\n",dat[2]);
printf("湿度:%d\r\n",dat[0]);
printf("\r\n");
}
delay_ms(500);
// KEY_Scan();//按键扫描
if(AirLink_KEY==0) //AirLink按键配网
{
while(!AirLink_KEY);
// PBout(5) = 1;
gizwitsSetMode(WIFI_AIRLINK_MODE);
GIZWITS_LOG("AirLink mode\r\n");
}
if(SoftAP_KEY==0) //SoftAP模式按键配网
{
while(!SoftAP_KEY);
PBout(5) = 1;
gizwitsSetMode(WIFI_SOFTAP_MODE);
GIZWITS_LOG("Soft AP mode\r\n");
}
userHandle(); //数据处理函数
gizwitsHandle((dataPoint_t *)¤tDataPoint);
}
}
二、ESP8266
1.ESP8266固件烧录(机智云固件)
(1)机智云固件下载
解压后的文件
然后通过flash烧入固件
根据ESP8266型号选择文件路径(文件名是含有combine)
(2)下载步骤
首先:将TTL转串口与ESP8266按照烧录时接线
再:点击START按钮
再:将RST从GND拔出置空
最后:等待下载完成
2.手机APP下载
3.ESP8266配网
(1)方法一:AirLink模式配网步骤
①通过按键使ESP8266进入AirLink模式
②手机连上路由器,注意手机要是在wifi模式下
③打开APP进行一键配置,然后填写你手机所连的wifi账号密码,选择乐鑫,然后确认设备状态操作,等待一会就能配网成功了
(2)方法二:SoftAP模式下配网步骤
①ESP8266进入SoftAP模式
②手机连上ESP8266建立的AP,就是wifi,账号是XPG-GAgent-XXXX密码是123456789
③打开APP进行一键配置,然后填写路由器的账号密码,然后进行配网
总结:SoftAP模式就是指先连上ESP8266建立的AP,然后在通过输入路由器的名称和密码让ESP8266连上路由器,然后ESP8266就配网成功了