| 基于STM32 HAL库与标准库的esp8266接入机智云方案-代码重要文件 
 
 
 在《基于STM32 HAL库与标准库的ESP8266接入机智云方案(上篇)》中,我们介绍了硬件连接和机智云客户端的创建;在《基于STM32 HAL库与标准库的ESP8266接入机智云方案(下篇)》中,我们深入讲解了代码下载、分析与直接使用的过程,并探讨了如何将HAL库和标准库移植到机智云平台。由于篇幅有限,本文将重点介绍机智云代码中的重要文件及其功能,帮助开发者更好地理解和使用机智云提供的资源。欲了解前两篇详细内容,可通过以下链接访问:
 基于STM32 HAL库与标准库的ESP8266接入机智云方案(上篇)
 
 [url=https://club.gizwits.com/thread-170351-1-1.html]点击这里查看[/url]
 
 基于STM32 HAL库与标准库的ESP8266接入机智云方案(下篇)
 
 点击这里查看
 
 
 
 
 
 一、查看机智云代码重要的文件 
 里面的文件我们只需要3个: 
 
 我们将其复制出来我们自己的工程: 
 二、添加文件路径 我们打开我们自己工程: 
 
 把我们复制过来的文件路径都添加进去,不然我们直接包括头文件会报错: 
 
 然后打开添加组,把对应的C文件都添加进去: 
 
 三、打开Use Micro LIB  打开这个才能print函数重映射: 
 
 
 四、代码移植 
 添加我圈起来的代码: 
 
 这样子我们的代码就基本移植成功了。 如果想要按键控制ESP8266工作模式的还需要添加(非必要): 
 
  
 
 
  
 
  
 复制代码void key1ShortPress(void)
{
    GIZWITS_LOG("KEY1 PRESS ,Production Mode\n");
    gizwitsSetMode(WIFI_PRODUCTION_TEST);
}
 
/**
* key1 long press handle
* @param none
* @return none
*/
void key1LongPress(void)
{
    GIZWITS_LOG("KEY1 PRESS LONG ,Wifi Reset\n");
    gizwitsSetMode(WIFI_RESET_MODE);
 
}
 
/**
* key2 short press handle
* @param none
* @return none
*/
void key2ShortPress(void)
{
    GIZWITS_LOG("KEY2 PRESS ,Soft AP mode\n");
    #if !MODULE_TYPE
    gizwitsSetMode(WIFI_SOFTAP_MODE);
    #endif
}
 
/**
* key2 long press handle
* @param none
* @return none
*/
void key2LongPress(void)
{
    //AirLink mode
    GIZWITS_LOG("KEY2 PRESS LONG ,AirLink mode\n");
    #if !MODULE_TYPE
    gizwitsSetMode(WIFI_AIRLINK_MODE);
    #endif
}
 
/**
* Key init function
* @param none
* @return none
*/
void keyInit(void)
{
    /* Key parameter initialization*/
    keyCategory_t keys[KEY_NUM]={
        [KEY1] = {
 
        .fsm.keyGpio.keyPort = KEY1_GPIO_Port,
        .fsm.keyGpio.keyPin = KEY1_Pin,
        //Key1 State Machine Init
        .fsm.keyShield = ENABLE,
        .fsm.keyDownLevel = Bit_RESET,
        //Key1 Callback function init
        .func.ShortPressCb = key1ShortPress,
        .func.longPressCb = key1LongPress,
        },
 
        [KEY2] = {
        .fsm.keyGpio.keyPort = KEY2_GPIO_Port,
        .fsm.keyGpio.keyPin = KEY2_Pin,
        //Key2 State Machine Init
        .fsm.keyShield = ENABLE,
        .fsm.keyDownLevel = Bit_RESET,
        //Key2 Callback function init
        .func.ShortPressCb = key2ShortPress,
        .func.longPressCb = key2LongPress,
        },
    };
    keyParaInit(keys); 
}
AI写代码
  然后再main函数中调用Key_Init函数即可: 
  五、修改任务处理函数 跳转gizwitsHandle((dataPoint_t *)¤tDataPoint);函数定义,找到任务处理函数: 
 
 继续跳转去函数定义,添加任务处理: 
 
 到这里我们就已经完成了代码的移植,然后我们按照前面连接机智云的方法,在手机上即可控制LED的点亮与熄灭! 标准库移植机智云 
 
 |