功能描述:短按按键,开始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();
}