Подскажите пожалуйста, пишу следующий код на питоне:
5 | ser = serial. Serial ( "/dev/tty.usbserial-A700eRV8" , 9600) |
6 | except serial.SerialException: |
На ардуино должен загораться светодиод при принятии "М". Работает, но следующим образом:
Как только открываю монитор порта (который встроен в ide Arduino), и исполняю скрипт питоновский еще раз - он начинает работать. Как только монитор порта закрываю, так перестает скрипт работать. Ощущение, что что-то мешает установить связь по последовательному порту когда монитор закрыт.
Какие могут быть причины? Может кто сталкивался с проблемой и знает как ее исправить?
Спасибо
Вы кажется забыли выполнить ser.open(), посмотрите примеры еще раз более внимательно.
01
import serial, sys
02
03
# Set up serial port
04
try
:
05
ser = serial.
Serial
(
"/dev/tty.usbserial-A700eRV8"
, 9600)
06
except serial.SerialException:
07
sys.exit()
08
09
if
not ser.isOpen() :
10
ser.open()
11
12
ser.write(
'M'
)
13
14
if
ser.isOpen() :
15
ser.close()
NeiroN,
в первую очередь спасибо за помощь! Но к сожалению, все равно проблема не исчезла. Стоит мне только закрыть монитор порта и попробовать выполнить скрипт еще раз - я вижу лишь моргание светодида и все. Запускаю монитор, выполняю скрипт - вижу в мониторе передачу данных, светодиод горит постоянно (как и должен)
Проблему решил следующим образом:
1
ser = serial.
Serial
(
"/dev/tty.usbserial-A700eRV8"
, 9600)
2
ser.setDTR(False)
3
time.sleep(1.5)