I have a Python 3 program but the code below doesn't work in Python 3. I've searched for days but didn't find any solution. Is there any way to get this working in Python 3?
The only output I get is a syntax error like:
print rc_time(pin_to_circuit) # Read RC timing using pin #18 ^ SyntaxError: invalid syntax
The setup looks like the following picture:
#!/usr/local/bin/python import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BOARD) #define the pin that goes to the circuit pin_to_circuit = 7 def rc_time (pin_to_circuit): count = 0 #Output on the pin for GPIO.setup(pin_to_circuit, GPIO.OUT) GPIO.output(pin_to_circuit, GPIO.LOW) time.sleep(0.1) #Change the pin back to input GPIO.setup(pin_to_circuit, GPIO.IN) #Count until the pin goes high while (GPIO.input(pin_to_circuit) == GPIO.LOW): count += 1 return count #Catch when script is interrupted, cleanup correctly try: # Main loop while True: print rc_time(pin_to_circuit) except KeyboardInterrupt: pass finally: GPIO.cleanup()