在while循环中使用return

时间:2014-12-16 13:59:22

标签: python return gpio

在我不断寻求更多控制的过程中,我需要根据一个结束停止GPIO引脚开关事件来设置中断。

我正在使用return确保在发送时拾取控制器更改,认为引脚11事件也会执行相同操作。但引脚事件并没有停止电机。

GPIO.setup(GPIO_SW1, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.add_event_detect(11, GPIO.RISING)

def MotorControl(direction,fspeed,bspeed):
  print "motor control: bspeed: " + str(bspeed) +"% : fspeed: " + str(fspeed) + " %"
  while not  GPIO.event_detected(11):
    if direction == "fwd":
       print "I am forward"
       bck.ChangeDutyCycle(0)
       fwd.ChangeDutyCycle(fspeed)
       time.sleep(0.01)
       return  
    if direction == "bwd":
       print "iam backwards"
       bck.ChangeDutyCycle(bspeed)
       fwd.ChangeDutyCycle(0)
       time.sleep(0.01)
       return     
  else:
     bck.ChangeDutyCycle(0)
     fwd.ChangeDutyCycle(0)
  return

0 个答案:

没有答案