我使用pyfirmata在python3中编写了一个基本代码,用于从模拟引脚0读取值(我连接了一个光传感器,输出来自模拟引脚0),但无论如何它都没有输出。我在 arduino IDE 中尝试了相同的代码,这给出了正确的答案。请帮忙。
代码是:
from pyfirmata import Arduino, util
import time
board = Arduino('/dev/cu.usbmodem1411')
it = util.Iterator(board)
it.start()
board.analog[0].enable_reporting()
while True :
print (board.analog[0].read())
time.sleep(1)
即使它在几秒钟后给出输出,它也会给出 0.29,这实际上并不是串行监视器上出现的传感器值。该值在 0 到 1023 之间变化,并且比这大得多。