Linux下串口調試工具


Linux下串口調試工具

一.minicom

  minicom作為串口調試工具,想必是搞嵌入式開發人員都知道的。使用起來比較方便,燒錄image的速度也很快。但是界面風格和顏色難以修改,不夠美觀;同時也不是特別穩定。不過這並不影響它成為最通用的串口調試工具之一。

  A.minicom的安裝

    ubuntu系統下:sudo apt-get install minicom

  B.連接串口設備或是USB轉串口設備(筆記本無串口的情況用的多)

    通過插拔設備,比較插拔前后的差別,確認設備。如果直接接串口的可查看ll /dev/tty*的變化,如果使用的是USB轉串口,請查看ll /dev/ttyUSB?。

  C.minicom的設置

    輸入:minicom -s彈出minicom設置,選擇serial port按Enter進入,再按A將設備改為B步驟中確認的設備如ttyS0或ttyUSB1等,再按Enter;按F將Yes改為No,再按Enter,回到上一級菜單,將更改的設置保存為.dfl文件。OK了,接着就能夠看到板子運行時的打印信息了。

  D.minicom用戶組dialout

    為了方便,可以將用戶加入到dialout用戶組,如sudo adduser 用戶名 dialout。

  E.minicom與tftp,燒寫image到各個分區

    實際工作中,我們需要將不同的image文件燒寫到flash的相應分區。windows系統直接使用tftp軟件,設置好image所在的目錄和主機ip即可。在linux系統下,如果想將linux主機上的image文件燒寫到目標板上。那么linux主機相當於作為服務器端,目標板作為客戶端.對於目標板,一般uboot都已經含有了tftp工具,對於服務器端我們需要安裝:sudo apt-get install tftpd,sudo apt-get intsll xinetd。

    接着在/etc/xinetd.d/目錄下創建一個名為tftp的文件,編輯其中的內容為:

    service tftp
    {
    disable         =no
    socket_type     =dgram
    protocol        =udp
    wait            =yes
    user            =root
    server          =/usr/sbin/in.tftpd

    // 只需修改此處,此處參數的含義是image文件所在目錄絕對路徑
    server_args     = -s /home/lee/image/
    source          = 11
    cps             = 100 2
    }    

    配置完以后重啟xinetd服務:service xinetd restart 或 /etc/init.d/xinetd restart

    然后便可以在mboot命令行進行image文件燒寫工作了。

二.ckermit

  Linux下常用的串口調試工具,minicom的使用是比較多的。但是minicom使用起來其實不太穩定,我在做項目的時候,minicom就偶爾怎 么連也連不上,出不了打印信息,需要重啟一次才會好。另外一個問題就是對於嵌入式開發板,minicom有時候還會出現無法進入Mboot小命令行的問 題。uboot官方文檔也是不推薦使用minicom,而是推薦kermit,所以此文介紹kermit的安裝/配置和使用,以及安裝過程可能出現的問題 的解決方法。

  A.kermit的安裝

    ubuntu下sudo apt-get install ckermit

    第二種方法是去c-kermit官網下載ckermit源代碼,然后編譯,這樣的好處是可以針對不同的平台進行編譯定制。

    1) 下載 cku302.tar.gz from http://www.columbia.edu/kermit/ck90.html#source
    放到 /usr/local/
src/ckermit目錄
    2)解壓縮 gunzip -c cku302.tar.gz | tar xf -
    3)編譯源代碼 make linux+krb5+ssl

    不過我在ubuntu12.04LTS版本下編譯過程遇到了很多問題,如果你也是如此,如下操作:

    sudo apt-get install libssl-dev libpam0g-dev libkrb5-dev libgssapi-krb5-2

    修改makefile

    找到makefile中make linux:處

    將下面這段
          if test -f /usr/lib64/

    libncurses.so || \
              test -f /usr/lib/libncurses.a || \
              test -f /usr/lib/libncurses.so; then \
             HAVE_LIBCURSES='-lncurses'; \
             else if test -f /usr/lib64/libcurses.so || \
             test -f /usr/lib/libcurses.a || \
             test -f /usr/lib/libcurses.so; then \
             HAVE_LIBCURSES='-lcurses'; fi; fi; \
  改成
          if test -f /usr/lib64/libncurses.so || \
            test -f /usr/lib/libncurses.a || \
            test -f /lib/x86_64-linux-gnu/libncurses.so.5 || \ ### 加上這行###
            test -f /usr/lib/libncurses.so; then \
            HAVE_LIBCURSES='-lncurses'; \
            else if test -f /usr/lib64/libcurses.so || \
            test -f /usr/lib/libcurses.a || \
            test -f /usr/lib/libcurses.so; then \
            HAVE_LIBCURSES='-lcurses'; fi; fi; \

   然后重新編譯,如果編譯過程仍然有問題,請看編譯的打印信息中提示的參數信息,可以需要在make linux+ssl+krb5后面加上參數項目,打印信息中會告訴你加上什么參數。

    編譯成功以后,會生存wart和wermit執行文件。你可以運行wermit啟動ckermit。為了方便可以添加軟鏈接。

   ln -s /usr/local/src/wermit /usr/bin/kermit

 B.kermit配置文件

     touch ~/.kermrc文件,填入文件內容,如下:

    set line /dev/ttyUSB2
    set speed 115200
    set carrier-watch off
    set handshake none
    set flow-control none
    robust
    set file type bin
       set file name lit
    set rec pack 1000
    set send pack 1000
    set window 5
    當然這寫命令你也可以在啟動kermit之后在其命令行輸入,但是每次都要輸入不夠效率。

    以后便可以輸入kermit來啟動了。

    啟動kermit之后,如果提示/var/lock:No such file or directory。請在/var目錄下創建一個lock目錄,然后重試。

    成功以后,輸入connect連接。等待一會兒,便可連接成功,出現打印信息了。

三.secureCRT for Linux

  secureCRT是我在windows下時最喜歡使用的超級終端,圖形化的界面也很直觀和容易。linux下它也不失為一個很好的終端,我用它來連接遠程服務器或是目標板。

  A.下載secureCRT和安裝

  http://www.vandyke.com/download/securecrt/download.html

  安裝:dpkg -i scrt-7.0.3-480.ubuntu11.i386.deb
  安裝完成以后,一開始我找了好久都沒找到對應的運行命令。最后在Applications-->Internet下找到了SecureCRT,運行便是。

  B.使用secureCRT連接遠程服務器和目標板

  1.連接遠程服務器,create new session,選擇ssh協議,選擇波特率115200,用戶名,host主機如172.20.3.241.ok之后輸入密碼便可以登錄上去。

  2.連接目標板,以USB轉串口為例

  create new session ,選擇serial串口協議,進入下一個窗口,不勾選RTS/CTS,然后直接下一步,連接OK,便可以看到目標板上的打印信息。

  C.簡單的破解問題

  在~/.vandyke/Config有一個文件SecureCRT_eval.lic,刪除以后就可以恢復30天試用,非常方便吧。

  D.順便提提顏色的配置

  從options-->global option->General ,點擊Edit Default Settings然后在新窗口中選擇appearence接着便可自定義你的顏色方案了。我個人比較喜歡foreground (54,129,34) (255,255,255); background (103,48,30) (255,255,255)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM