Я пытаюсь подключить осциллограф Agilent 54622D к Mac OS и использую последовательный USB-кабель ftdi. Я наблюдаю следующее поведение: если я закрываю файловый дескриптор последовательного соединения сразу после команды записи (я не ожидаю ответа от устройства, просто отправляю команду), соединение будет немедленно закрыто, что приводит к не все данные отправлено на устройство. Это кажется несколько логичным, но я никогда не видел, чтобы кто-то добавлял какие-то специальные задержки перед закрытием последовательного соединения.
Что я мог пропустить здесь?
Вот простой скрипт на Python, иллюстрирующий проблему:
import serial
port=serial.Serial(port="/dev/cu.usbserial-A603PQBN",baudrate=57600,timeout=1, rtscts=True, dsrdtr=False, stopbits=serial.STOPBITS_ONE)
port.write(":RUN\n")
port.close()
Обновление:
Я попробовал тот же скрипт в VirtualBox под управлением Linux и не заметил никаких подобных проблем. Теперь мне интересно, является ли это драйвером UART для Mac или проблемами с драйвером FTDI.