Как отправить файл на последовательный порт с помощью протокола kermit в python
-
19-09-2019 - |
Вопрос
У меня есть устройство, подключенное через последовательный порт к ПК.Используя c-kermit, я могу отправлять команды на устройство и считывать выходные данные.Я также могу отправлять файлы, используя протокол kermit.
В python у нас есть довольно приятная библиотека - pySerial.Я могу использовать его для отправки / получения данных с устройства.Но есть ли какое-нибудь хорошее решение для отправки файлов с использованием протокола kermit?
Решение
Вы должны быть в состоянии сделать это через модуль подпроцесса.Ниже предполагается, что вы уже можете отправлять команды на свой удаленный компьютер и анализировать результаты.:-)
На данный момент у меня нет ничего, на чем можно было бы это проверить, так что я буду говорить в общих чертах.Грубо Говоря:1.) используйте pyserial для подключения к удаленной системе через последовательный порт.2.) запустите клиент kermit в удаленной системе с помощью переключателей, которые отправят файл или файлы, которые вы хотите передать, через последовательный порт удаленных систем (используемую вами последовательную линию).) 3.) отключите ваш экземпляр pyserial 4.) запустите ваш клиент kermit с помощью подпроцесса и примите файлы.5.) повторно подключите ваш экземпляр pyserial и все очистите.
Я готов поспорить, что это не сильно поможет, но когда я действительно сделал это несколько лет назад (используя os.system, а не подпроцесс в отвратительной системе SuperDOS), мне потребовалось некоторое время, чтобы осознать тот факт, что мне пришлось удаленно запускать клиент kermit, чтобы отправить файл моему клиенту!
Если у меня будет немного времени на этой неделе, я открою одну из своих старых жеодовых досок и посмотрю, смогу ли я опубликовать какой-нибудь реальный рабочий код.