1. 程式人生 > >嵌入式linux應用開發完全手冊(一)

嵌入式linux應用開發完全手冊(一)

第一篇 嵌入式Linux開發環境構建

1.1.2 嵌入式發展

  • SCM(Single Chip Microcomputer)微控制器;
  • MCU(Micro Controller Unit)微控制器;
  • SoC(System on a Chip):系統級晶片,在一個晶片上由於廣泛使用預定製模組IP(Intellectual Property)而得以快速開發的積體電路;

1.2 基於ARM處理器的嵌入式Linux系統

1.2.1



1.2.2 嵌入式作業系統:

  • 嵌入式Linux:開源免費,易於移植,資源豐富,硬體支援廣泛,缺點:實時性不足;
  • VxWork:
  • Windows CE:
  • uC/OS-II;等

2.1 PC和嵌入式裝置交叉開發模式

  1. 在主機上編譯Bootloader, 然後通過JTAG燒入單板;
  2. 在主機上編譯嵌入式Linux核心,通過BootLoader燒入單板或直接啟動;
  3. 在主機上編譯各類應用程式,單板啟動核心後通過NFS允許它們,經過驗證後再燒入單板;

2.1.2 目標板要求



2.2 軟體環境構建

2.2.1 主機Linux作業系統安裝:通過虛擬機器安裝Linux系統;

2.2.2 主機Linux作業系統網路配置

  1. VMware提供4種網路連線方式:網橋網路(Bridged),網路地址翻譯網路(NAT), 僅為主機網路(Host-only), 和客戶網咯。
  2. 安裝配置FTP,SSH和NFS服務

2.2.4 U-Boot,Linux核心,根據busybox建立的檔案系統這3部分構成了基本的,最小的嵌入式系統 ;


第三章 嵌入式程式設計基礎知識

3.1 交叉編譯工具選項介紹:arm-linux-gcc

3.2.1 Makefile規則


3.2.2 Makefile常用函式

  1. 字串替換和分析函式 : subst, patsubst, strip, findstring, filter, filter-out, sort,  
  2. 檔名函式 : dir, notdir, suffix, basename, addsuffix, addprefix, wildcard
    ,
  3. 其他函式 : foreach, if-then, origin, shell,

3.3.1 基本彙編指令

  1. 相對跳轉指令 : b, bl,
  2. 資料傳送指令mov,地址讀取偽指令ldr,
  3. 記憶體訪問指令:ldr, str, ldm, stm, 
  4. 加減指令:add,sub
  5. 程式狀態暫存器的訪問指令:msr, mrs, 





第四章 windows和linux環境下工具和命令介紹

Windows工具:

  • 4.1.1 程式碼閱讀編輯工具:Source Insight,
  • 4.1.2 檔案傳輸工具:Cuteftp
  • 4.1.3 遠端登入工具:SecureCRT, 支援多種協議如SSH2, SSH1, Telnet, Serial等.
  • 4.1.4 TFTP伺服器軟體:Tftpd32,一款輕便的DHCP, TFTP, SNTP和Syslog伺服器軟體,

Linux工具和命令:

  • 4.2.1 程式碼閱讀編輯工具:KScope;
  • 4.2.2 遠端登入工具:C-kermit;
  • 4.2.3 編輯命令vi;
  • 4.2.4 查詢命令grep, find命令;
  • 4.2.5 線上手冊檢視命令man: man [section] name

    

  • 4.2.6 其他命令:tar, diff, patch

    tar : tar命令具有打包、解包、壓縮、解壓縮功能,如"tar czf dirA.tar.gz dirA";

    diff, patch : diff命令常用來比較檔案、目錄,也可以用來製作補丁檔案;