3
我將我的樹莓派連接到2.4ghz rc接收器,並且我試圖使用python來解釋脈衝寬度信號。我使用一個輸入引腳來讀取沒有輸入的時間,然後是有輸入的時間,然後減去兩個。脈衝寬度閱讀器每次打印相同的值
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(13,GPIO.IN)
GPIO.setup(15,GPIO.OUT)
GPIO.output(15,GPIO.HIGH)
start = time.time()
stop = time.time()
x = 0
y = 0
while(x == 0):
if(GPIO.input(13) == 0):
start = time.time()
x = 1
while(y == 0):
if(GPIO.input(13) == 1):
stop = time.time()
y = 1
Width = stop-start
print(Width)
GPIO.cleanup()
我遇到的問題是,不管多久,我讓脈衝寬度(通過手動連接和斷開銷13和15),它打印〜0.006。它也將不會打印,直到我斷開對方的針腳,雖然我一直無法弄清楚爲什麼。
看不出爲什麼這樣做不起作用,但是你可以用中斷來代替:https://www.raspberrypi.org/forums/viewtopic.php?f=32&t=43069 – 101