zoukankan      html  css  js  c++  java
  • 使用sz/rz基于串口传输文件

    关键词:lrzsz、minicom、ZMODEM、MD5sum等。

    在环境受限的嵌入式系统上,往往只有串口可以使用。

    此时如果需要传输文件,需要借助rz/sz工具,可以使用的传输协议有ZMODEM、YMODEM、XMODEM,一般首选的是ZMODEM。

    这里记录minicom下使用rz/sz进行文件传输的操作。

    首先说明一下rz和sz的文件传输方向,这些命令都是在调试板上执行的,调试板通过串口和PC相连。

    rz表示调试版发起从PC接收文件,sz表示调试版发送向PC传送文件。

    1. 使能sz/rz工具

    通过buildroot打开Target packages->Networking applications->lrzsz,也即打开了BR2_PACKAGE_LRZSZ

    2. minicom下使用sz/rz工具

    2.1 minicom下sz发送文件

    首先看一下sz的使用,最简单的就是“sz filename”,传送的文件默认在启动minicom的路径。

    如果想指定路径可以通过“sz -f full_path_name”实现,这种方法会在目标板上同样地址保存文件。这样做需要谨慎。

    在文件传输结束后,调试版和PC两边通过md5sum验证一下传输数据有效性。

     更多使用方法:

    sz version 0.12.20
    Usage: sz [options] file ...
       or: sz [options] -{c|i} COMMAND
    Send file(s) with ZMODEM/YMODEM/XMODEM protocol
        (X) = option applies to XMODEM only
        (Y) = option applies to YMODEM only
        (Z) = option applies to ZMODEM only
      -+, --append                append to existing destination file (Z)
      -2, --twostop               use 2 stop bits
      -4, --try-4k                go up to 4K blocksize
          --start-4k              start with 4K blocksize (doesn't try 8)
      -8, --try-8k                go up to 8K blocksize
          --start-8k              start with 8K blocksize
      -a, --ascii                 ASCII transfer (change CR/LF to LF)
      -b, --binary                binary transfer
      -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)
      -c, --command COMMAND       execute remote command COMMAND (Z)
      -C, --command-tries N       try N times to execute a command (Z)
      -d, --dot-to-slash          change '.' to '/' in pathnames (Y/Z)
          --delay-startup N       sleep N seconds before doing anything
      -e, --escape                escape all control characters (Z)
      -E, --rename                force receiver to rename files it already has
      -f, --full-path             send full pathname (Y/Z)
      -i, --immediate-command CMD send remote CMD, return immediately (Z)
      -h, --help                  print this usage message
      -k, --1k                    send 1024 byte packets (X)
      -L, --packetlen N           limit subpacket length to N bytes (Z)
      -l, --framelen N            limit frame length to N bytes (l>=L) (Z)
      -m, --min-bps N             stop transmission if BPS below N
      -M, --min-bps-time N          for at least N seconds (default: 120)
      -n, --newer                 send file if source newer (Z)
      -N, --newer-or-longer       send file if source newer or longer (Z)
      -o, --16-bit-crc            use 16 bit CRC instead of 32 bit CRC (Z)
      -O, --disable-timeouts      disable timeout code, wait forever
      -p, --protect               protect existing destination file (Z)
      -r, --resume                resume interrupted file transfer (Z)
      -R, --restricted            restricted, more secure mode
      -q, --quiet                 quiet (no progress reports)
      -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds
          --tcp                   build a TCP connection to transmit files
          --tcp-server            open socket, wait for connection
      -u, --unlink                unlink file after transmission
      -U, --unrestrict            turn off restricted mode (if allowed to)
      -v, --verbose               be verbose, provide debugging information
      -w, --windowsize N          Window is N bytes (Z)
      -X, --xmodem                use XMODEM protocol
      -y, --overwrite             overwrite existing files
      -Y, --overwrite-or-skip     overwrite existing files, else skip
          --ymodem                use YMODEM protocol
      -Z, --zmodem                use ZMODEM protocol

    2.2 minicom下rz接收文件

    通过rz接收文件,首先需要输入tz:

    然后输入Ctrl+A,紧接着按下Z,在按下S(Send files)。

    选择zmodem,进入文件选择界面。

    上下键或者PageUp/PageDown移动,空格选择文件。

    同样使用md5sum进行验证。

    rz version 0.12.20
    Usage: rz [options] [filename.if.xmodem]
    Receive files with ZMODEM/YMODEM/XMODEM protocol
        (X) = option applies to XMODEM only
        (Y) = option applies to YMODEM only
        (Z) = option applies to ZMODEM only
      -+, --append                append to existing files
      -a, --ascii                 ASCII transfer (change CR/LF to LF)
      -b, --binary                binary transfer
      -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)
      -c, --with-crc              Use 16 bit CRC (X)
      -C, --allow-remote-commands allow execution of remote commands (Z)
      -D, --null                  write all received data to /dev/null
          --delay-startup N       sleep N seconds before doing anything
      -e, --escape                Escape control characters (Z)
      -E, --rename                rename any files already existing
          --errors N              generate CRC error every N bytes (debugging)
      -h, --help                  Help, print this usage message
      -m, --min-bps N             stop transmission if BPS below N
      -M, --min-bps-time N          for at least N seconds (default: 120)
      -O, --disable-timeouts      disable timeout code, wait forever for data
          --o-sync                open output file(s) in synchronous write mode
      -p, --protect               protect existing files
      -q, --quiet                 quiet, no progress reports
      -r, --resume                try to resume interrupted file transfer (Z)
      -R, --restricted            restricted, more secure mode
      -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds
      -S, --timesync              request remote time (twice: set local time)
          --syslog[=off]          turn syslog on or off, if possible
      -t, --timeout N             set timeout to N tenths of a second
      -u, --keep-uppercase        keep upper case filenames
      -U, --unrestrict            disable restricted mode (if allowed to)
      -v, --verbose               be verbose, provide debugging information
      -w, --windowsize N          Window is N bytes (Z)
      -X  --xmodem                use XMODEM protocol
      -y, --overwrite             Yes, clobber existing file if any
          --ymodem                use YMODEM protocol
      -Z, --zmodem                use ZMODEM protocol
  • 相关阅读:
    呈现系统-组件间的通信方式(7)
    web项目中图标的前端处理方案
    ADO--数据访问技术
    canvas--绘制路径
    canvas--改变颜色
    canvas-在画布中画两个方块(一个空心一个实体)
    canvas--画布《第一步》
    拼图游戏【简单】
    判断字符串是否为空--string.Empty、string=""、s.length==0
    判断Char是否为数字
  • 原文地址:https://www.cnblogs.com/arnoldlu/p/10537549.html
Copyright © 2011-2022 走看看