Я работаю с устройством RS-232 через GNU screen
.
$ screen /dev/ttyUSB0 115200
В какой-то момент мне нужно отправить локальный файл на устройство, используя протокол xmodem
или kermit
. В Windows я использую TeraTerm, у которого есть соответствующий пункт меню. Как я могу добиться этого на экране GNU?
gnu-screen
serial-port
kermit
Джордж М
источник
источник
screen
cu
какого-либо другого пакета?sx binary.bin | socat FILE:/dev/ttyUSB0,b115200,raw -
Give your local XMODEM receive command now
Если вы хотите использовать zmodem, вы должны установить
zmodem
опцию наpass
, если ваш сеанс экрана уже запущен, нажмите CTRL+A :и просто введитеzmodem pass
. Для отправки данных просто используйтеsz
команду изlrzsz
пакета.Если вы хотите получать данные через экран, вы должны установить значение на
catch
.источник
zmodem catch
это вариант, который я искал целую вечность! Хорошее избавление, миником.Мне нужно было автоматизировать последовательную передачу файла .bin в xbee с помощью xmodem, поэтому я использовал этот небрежный код:
Третья строка отправляет команду на другую сторону (xbee), чтобы начать прослушивание передачи файла. Таким образом, вы, вероятно, хорошо с просто:
источник
Если вы пытаетесь сделать это через экран в OSX, вы можете следовать процедуре, изложенной user32704, с некоторыми небольшими изменениями. Сначала вам нужно собрать lrzsz из исходного кода, который можно найти здесь:
https://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz
Тогда вместо
exec !! sx yourbinary.bin
вас следует использовать:источник
sudo port install lrzsz