查看: 1705|回复: 0
收起左侧

[求助] RPi.GPIO库中检测开关按下问题

2016-11-17 20:06:53 | 显示全部楼层 |阅读模式
  1. # coding=utf-8
  2. import RPi.GPIO as GPIO
  3.   GPIO.setmode(GPIO.BOARD)
  4.   num=0
  5.   GPIO.setup(15, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
  6.   def callback(channel):
  7.       global num
  8.       num=num+1
  9.      print "rising",num

  10. GPIO.add_event_detect(15, GPIO.RISING,callback, bouncetime=1000)
  11. while 1:
  12.      pass
复制代码
测试代码如上,复位开关一端接引脚15,一端接引脚17(3.3V),开关按下时确实有输出。但是问题如下:
1. 不小心用金属碰到引脚15或者其他引脚时,引脚15会触发上升沿,输出 rising
2. 如果callback函数执行时间太长(如10s),那么一次按压开关动作callback会执行两次(将bouncetime增加到10s以上可以勉强解决)
会的高手帮我看看怎么解决这个问题

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热点推荐

关注我们,了解更多

官方微信

服务时间:10:00-16:00

13714503811

公司地址:深圳市龙岗区南湾街道东门头路8号

Copyright © 2012-2020 Powered by 树莓派论坛 2019.4  粤ICP备15075382号-1
快速回复 返回列表 返回顶部