2015-10-14 35 views
0

我輸入以下代碼來檢查輸入引腳的值,但它從不顯示數字值作爲輸入。我不知道什麼是錯的。任何人都可以解釋它嗎?Python py pyfirmata代碼顯示的值不正確

from pyfirmata import ArduinoMega, util 
board = ArduinoMega('COM3') 

digital_0 = board.get_pin('d:30:i') 
board.digital[9].write(1) 
value= digital_0.read() 
print value 

結果總是:

>>> 
None 
>>> 
+0

你能解釋一下這條線是幹什麼的嗎? - 'digital_0 = board.get_pin('d:30:i')',我從來沒有使用arduino或python,但看起來很酷我(這是機器人是的?) – Coffee

+1

是的,它是機器人技術,這條線定義爲數字引腳輸入@Coffee –

回答

1

board.digital[9].write(1)因爲你想獲得約30針的信息必須更改爲board.digital[30].write(1)

,而不是9

然後你會得到此錯誤:

Digital pin 30 is set up as an INPUT and can therefore not be written to

解決方案:

digital_0 = board.get_pin('d:30:o') 
1

其實我婉不使用下拉電阻,這就是爲什麼它被賦予了錯誤的值。這個問題很久以前就解決了:)