收藏官网首页
查看: 18684|回复: 2

[问答] soc方案,想做个按键短按实现开和关,长按进alink模式

6

主题

30

帖子

402

积分

中级会员

Rank: 3Rank: 3

积分
402
跳转到指定楼层
楼主
发表于 2017-6-6 14:52:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
校园创客福利
soc方案,想做个按键短按实现开和关,长按进alink模式,试了好几种方法,都不成功,哪位大神能给写个代码学学啊,file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\1124722468\QQ\WinTemp\RichOle\1QSD_KLN1SG))I{JC)L%)DE.pngfile:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\1124722468\QQ\WinTemp\RichOle\1QSD_KLN1SG))I{JC)L%)DE.png

QQ图片20170606145211.png (21.84 KB, 下载次数: 985)

QQ图片20170606145211.png

321

主题

1054

帖子

4513

积分

论坛元老

Rank: 8Rank: 8

积分
4513
QQ
沙发
发表于 2017-6-6 15:17:52 | 只看该作者
soc版微信宠物屋源码有长短按按键例程

13

主题

81

帖子

1241

积分

金牌会员

Rank: 6Rank: 6

积分
1241
板凳
发表于 2017-7-24 18:14:06 | 只看该作者
不知你解决没,给个你参考
user_main.c

bool key_data = 0;    //按键状态: 0 关  1 开

/**@name 按键相关定义
* @{
*/
#define GPIO_KEY_NUM                            1                           ///< 定义按键成员总数
#define KEY_0_IO_MUX                            PERIPHS_IO_MUX_GPIO4_U      ///< ESP8266 GPIO 功能
#define KEY_0_IO_NUM                            4                           ///< ESP8266 GPIO 编号
#define KEY_0_IO_FUNC                           FUNC_GPIO4                  ///< ESP8266 GPIO 名称

/**
* key1按键短按处理
* @param none
* @return none
*/
LOCAL void ICACHE_FLASH_ATTR key1ShortPress(void)
{
   
if(0 == key_data)
{
        jdq1On();     //开关动作
       key_data = 1;      //置状态为开
       currentDataPoint.valuesocket_OnOff_a = 1;     //上报状态到云端数据点
       os_printf("#### KEY short press ,switch On\n");
  
}
else
{
       jdq1Off();
      key_data = 0;
      currentDataPoint.valuesocket_OnOff_a = 0;
      os_printf("#### KEY short press ,switch Off\n");
}

}
/**
* key1按键长按处理
* @param none
* @return none
*/
LOCAL void ICACHE_FLASH_ATTR key1LongPress(void)
{
    os_printf("#### key1 long press, airlink mode\n");
    //gizwitsSetMode(WIFI_AIRLINK_MODE);


}

/**
* 按键初始化
* @param none
* @return none
*/
LOCAL void ICACHE_FLASH_ATTR keyInit(void)
{
    singleKey[0] = keyInitOne(KEY_0_IO_NUM, KEY_0_IO_MUX, KEY_0_IO_FUNC,
                                key1LongPress, key1ShortPress);
   
    keys.singleKey = singleKey;
    keyParaInit(&keys);
}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表