Ubuntu 微软 开源 apache wordpress mysql Android Python shell Windows linux java nginx 程序员 centos 编程 Firefox 云计算 php google

嵌入式linux系統與主機通過串口傳輸文件

嵌入式Linux系統與主機通過串口傳輸文件


     我想如果要從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包,解壓縮後輸入./configure,然後進入了src文件夾中,修改了src文件夾中的Makefile文件,配置為與手機對應的交叉編譯器,運行make,ok!得到兩個可執行文件sz,rz(或者 lsz,lrz),把它們下載到開發板linux系統的/bin目錄下。
    
      二、情況1: PC機用windows操作系統
     如果PC機用的是windows操作系統,串口通信工具可以用系統自帶的超級終端。下面介紹一下傳輸文件的方法。
      1、開發板-->PC機
         在開發板上輸入 sz filename。
         在PC機上點擊超級終端的菜單“傳送”-> “接收文件”,選擇下載的位置和Zmodem 與崩潰恢復協議,點擊接收即可。
      2、PC機-->開發板
         在開發板上先進入/tmp 目錄,然後輸入 rz。
         在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目錄下找到這個文件了。

延伸阅读

    评论