我正在做一个科学项目,正在制造一种可以计算闪电离您的距离的设备。我正在使用树莓派。
我将代码和繁育板设置为使用光敏电阻对光值进行计数。我试图通过使灯光在特定值以下后实时计数来完成我的代码,然后当它听到USB麦克风发出的“雷声”时,它将停止。然后将#除以5。
我的问题是,我无法弄清楚如何计数并在检测到光线后立即激活代码。
这是我的密码
#!/usr/local/bin/python
import RPi.GPIO as GPIO
import time
__author__ = 'Gus (Adapted from Adafruit)'
__license__ = "GPL"
__maintainer__ = "pimylifeup.com"
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 interupted, cleanup correctly
try:
# Main loop
while True:
print rc_time (pin_to_circuit)
except KeyboardInterrupt:
pass
finally:
GPIO.cleanup()
最佳答案
除了实时计数之外,您还可以记录每个条件发生和减去的时间吗?就像是
while True:
if lightingCondition:
lightningTime = datetime().time()
break
while True:
if thunderCondition:
thunderTime = datetime().time()
break
difference = thunderTime - lightningTime
关于python - Raspberry Pi计算光值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46946046/