Я довольно новичок в Python и работаю с фирмами. Я пытаюсь поиграть с Arduino.
Вот что я хочу, чтобы произошло:
- Установите Arduino со светодиодом в качестве
цифровой выход
Установить потенциометр на аналоговый 0
Установите таймер PyQt для обновления
положение потенциометра в
применение
Установить порог в PyQt для поворота
Светодиод включен (аналоговый вход имеет 1024 бит
разрешение, так сказать, 800 как
порог)
Я использую эту фирмату: Ссылка
Вот код, с которым у меня проблемы:
import sys
из PyQt4 импорт QtCore, QtGui
от фирмы импорт *
# Arduino setup
self.a = Arduino('COM3')
self.a.pin_mode(13, firmata.OUTPUT)
# Create timer
self.appTimer = QtCore.QTimer(self)
self.appTimer.start(100)
self.appTimer.event(self.updateAppTimer())
def updateAppTimer(self):
self.analogPosition = self.a.analog_read(self, 0)
self.ui.lblPositionValue.setNum()
Я получаю сообщение об ошибке:
Traceback (последний вызов был последним):
Файл "D: \ Programming \ Eclipse \ IO Demo \ src \ control.py", строка 138, в
myapp = MainWindow ()
Файл "D: \ Programming \ Eclipse \ IO Demo \ src \ control.py", строка 56, в init
self.appTimer.event (self.updateAppTimer ())
Файл "D: \ Programming \ Eclipse \ IO Demo \ src \ control.py", строка 60, в updateAppTimer
self.analogPosition = self.a.analog_read (self, 0)
Ошибка типа: analog_read () принимает ровно 2 аргумента (дано 3)
Если я убираю 'self', я получаю то же сообщение об ошибке, но дается только 1 аргумент
Что неявно делает python, чего я не знаю?
Blockquote