ESP8266(三)按键短按控制Smartconfig连接

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40110248/article/details/91312036

功能描述:短按按键,开始smartconfig;
结合此篇:ESP8266(二)使用微信进行Smartconfig

按键使用的是开发板上的FLASH按键,此按键和GPIO0连接。
在这里插入图片描述
程序如下:

//声明按键
#define KEY_IO_MUX PERIPHS_IO_MUX_GPIO0_U//按键GPIO0
#define KEY_IO_NUM 0
#define KEY_IO_FUNC FUNC_GPIO0
//按键短按功能
void key_short_func(void)
{
 smartconfig_stop();
 wifi_set_opmode_current (0x01);//sta模式
 smartconfig_start(smartconfig_done);
 //ESP8266_PWM_Init();//呼吸灯
 os_timer_disarm( &os_timer );//取消定时器定时
 count=0;//调用打印从0开始
 os_timer_setfn(&os_timer,os_timer_callback,NULL );//定时器回调函数
 os_timer_arm( &os_timer, 1000, true );//使能毫秒级定时器
 }
 //按键初始化
 void drv_Key_Init( void )
{
    static struct keys_param key;
    static struct single_key_param *psingle_key;
    psingle_key = key_init_single( KEY_IO_NUM, KEY_IO_MUX,KEY_IO_FUNC,NULL,&key_short_func);
    key.key_num = 1;
    key.single_key = &psingle_key;
    key_init( &key );
}
//直接在user_init()中调用按键初始化
void ICACHE_FLASH_ATTR
user_init(void)
{
drv_Key_Init();
}
展开阅读全文

没有更多推荐了,返回首页