您的位置:首页 > 运维架构 > Linux

嵌入式linux系统与主机通过串口传输文件(转)

2012-03-07 11:29 671 查看
网上搜了一下如果用串口进行传输文件的方法,摘抄如下:

我想如果要从PC机下载东西到开发板的嵌入式linux系统里面,很多人首先会想到用tftp sftp等网络工具从网口下载。但如果网络用不了,只能通过串口下载怎么办呢?这个时候有两个工具能帮到你:一个是zmrx、zmtx,另外一个是lsz、lrz。个人觉得zmrx/zmtx没有lsz/lrz稳定,建议还是用后者。下面介绍一下lsz/lrz的使用方法。

一、编译lrzsz并下载到开发板上

http://download.chinaunix.net/download/0007000/6293.shtml下一个lrzsz的tar包,解压缩后输入CC=arm-linux-gcc ./configure (不一定是-linux-gcc,也可以换成你想用的交叉编译工具),运行make,ok!在src目录下得到两个可执行文件sz,rz(或者
lsz,lrz),把它们下载到开发板linux系统的/bin目录下。然后执行"export PATH=路径:$PATH"就可以了

二、情况1: PC机用windows操作系统

如果PC机用的是windows操作系统,串口通信工具可以用系统自带的超级终端。下面介绍一下传输文件的方法。

1、开发板-->PC机

在开发板上输入 sz filename。(或者lsz)

在PC机上点击超级终端的菜单“传送”->
“接收文件”,选择下载的位置和Zmodem 与崩溃恢复协议,点击接收即可。

2、PC机-->开发板

在开发板上先进入/tmp 目录,然后输入 rz(或者lrz)。

在PC机上点击超级终端的菜单“传送”->
“发送文件”,选择目标文件和Zmodem 与崩溃恢复协议,点击发送即可。

三、情况2: PC机用 linux 操作系统

如果PC机用的是 linux 操作系统,串口通信工具可以用minicom。下面介绍一下传输文件的方法。

1、如果是第一次使用minicom,需要进行minicom的设置:

# minicom -s
出现这样的配置界面:
┌───── [configuration]──────┐
│ Filenames and paths                  │
│ File transfer protocols              │
│ Serial port setup                    │
│ Modem and dialing                    │
│ Screen and keyboard                  │
│ Save setup as dfl                    │
│ Save setup as..                      │
│ Exit                                 │
│ Exit from Minicom                    │
└───────────────────┘

选择Serial port setup, 会看到这样的选项:

A — Serial Device : /dev/ttyS0

B — lockfile Location : /var/lock

C — Calling Program :

D — Callout Program:

E — Bps/par/Bits : 115200 8N1

F — Hardware Flow Control : NO

G — Software Flow Control : NO

Change with setting?

输入前面对应的字母即可进入相应的选项。将选项A的值设置为/dev/ttyS0 表示是串口1,将选项E的值设置为115200,将选项F设置为NO(请根据实际情况配置).

初始化设置中可以设置默认上传/下载的目录,传输协议参数,串口波特率等.设置完成后,选择”Save setup as dfl”,保存为默认设置.然后选择“Exit”,按Ctrl-A,再按z,即可进入Minicom的主界面:

Welco┌─────────────────────────────────┐
│                     Minicom Command Summary                       │
OPTIO│                                                                   │
Compi│          Commands can be called by CTRL-A                    │
│                                                                   │
Press│               Main Functions                  Other Functions     │
│                                                                   │
│ Dialing directory..D  run script (Go)....G | Clear Screen.......C │
│ Send files.........S  Receive files......R | cOnfigure Minicom..O │
│ comm Parameters....P  Add linefeed.......A | Suspend minicom....J │
│ Capture on/off.....L  Hangup.............H | eXit and reset.....X │
│ send break.........F  initialize Modem...M | Quit with no reset.Q │
│ Terminal settings..T  run Kermit.........K | Cursor key mode....I │
│ lineWrap on/off....W  local Echo on/off..E | Help screen........Z │
│                                            | scroll Back........B │
│                                                                   │
│      Select function or press Enter for none.                     │
│                                                                   │
│             Written by Miquel van Smoorenburg 1991-1995           │
│             Some additions by Jukka Lahtinen 1997-2000            │
│             i18n by Arnaldo Carvalho de Melo 1998                 │
└──────────────────────────────────┘
CTRL-A Z for help | 38400 8N1 | NOR | Minicom 2.00.0 | VT102 |      Offline


2、开发板-->PC机

在开发板上输入 sz filename,(然后会出现一个传输界面,传输完成后可以在你设置的默认下载目录里找到这个文件。

3、PC机-->开发板

在开发板上先进入/tmp 目录,然后输入 rz。

按Ctrl-A,再按s,会出现一个选择文件的界面,选择你要传输的文件,回车后出现一个传输界面,传输完成后便可以在开发板的/tmp目录下找到这个文件了。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: