widor bit模块中WPS脚本问题



  • 请问,WIDOR BIT 模块中的WPS引脚的寄存器配置是多少,发现程序里是通过脚本控制的,
    我想把它作为一个多功能的按键,比如长按3秒(不放开,自动判断超过3S)就初始化,短按一下开始配置网络。
    目前只能实现按下5S后放开才能进入初始化;如何才能按下按键3s后,不放开就能初始化呢?

    刚刚开始学习,希望各位大神不要嫌问题太简单。。。。


  • administrators

    文件修改:https://github.com/widora/openwrt_widora/commit/4a19a75f6f816f3ea8d5eb976a73decc0dc28304#diff-defbc103fc24eee2f9066bbe1030c412
    注意:这里边的“秒”不准确,用的1实际测试可能按照2-3秒才响应

    #!/bin/sh
    
    [ "${ACTION}" = "released" -o "${ACTION}" = "timeout" ] || exit 21
    
    . /lib/functions.sh
    
    echo "$BUTTON pressed for $SEEN seconds" > /dev/console
    
    # factory reset
    if [ "$SEEN" -gt 1 ]
    then
            echo "FACTORY RESET" > /dev/console
            jffs2reset -y
            sync
            reboot
    fi
    
    return 0
    


  • 感谢回答

    再问一下,这个WPS是中断模式的吗
    比如 我在WPS中加入SLEEP5
    然后按下按键后 进入WPS处理,
    接着(间隔小于5S)马上再按下按键
    我发现,他并不会马上再进入WPS
    要等一段时间才会再进入

    是这样的吗

    WPS中有程序在跑,再按下按键,要等上一次的脚本程序处理完,才会又一次进入WPS?


  • administrators

    IO检测是polling模式,但不确定是否可以多线程运行,得测试才知道。



  • 楼主问题解决了吗?能否教程一下,我也是新手😊



  • 恩 ,按键触发(按下,弹起)WPS,然后通过WPS传数据到C里面,通过一个线程不停地判断。


Log in to reply