第二階段 嵌入式系統開發
職場定位:Linux Development Engineer for Embedded System
本期目標:參加本期培訓的學員應該掌握嵌入式C語言高級編程技巧。嵌入式Linux應用開發和系統開發是嵌入式Linux中重要的一部分,也是企業人才需求廣的一部分。本期學習的主要目標是精通嵌入式Linux下的程序設計,熟悉嵌入式Linux開發流程,強化學員對Linux應用開發的理解和編碼調試的能力,同時掌握bootloader和kernel的移植技能,了解ARM體系結構和編程,具備ARM硬件接口的基礎知識,并了解Linux內核開發相關內容,在初步掌握Linux下的驅動程序開發方法的基礎上,通過典型應用場景的分析舉例,深入掌握Linux驅動程序的開發技巧,讓學員能夠熟練的移植或編寫不同類型的設備驅動程序。 |
|
時間 |
課程名稱 |
課程內容 |
第 8 天
|
嵌入式linux應用開發
|
8.1 靜態庫的制作和使用;8.2 動態庫的制作和使用;8.3 標準 I/O 文件類型的介紹;8.4 標準 I/O 和文件 I/O 介紹;8.5 標準 I/O 函數
|
第 9 天
|
嵌入式linux應用開發 |
9.1 unix 基礎知識;9.2 文件 I/O 介紹;9.3 文件 I/O 函數;9.4 取得文件的屬性信息;9.5 目錄讀取函數 |
第 10 天
|
嵌入式linux應用開發 |
10.1 進程基礎;10.2 進程相關命令;10.3 進程相關系統調用;10.4 守護進程 |
第 11 天
|
嵌入式linux應用開發 |
11.1 線程基礎;11.2 線程同步機制;11.3 線程互斥機制;11.4 進程間通信方式 |
第 12 天
|
嵌入式linux應用開發 |
12.1 無名管道;12.2 有名管道;12.3 信號的基礎;12.4 信號的命令介紹;12.5 信號相關函數使用 |
第 13 天
|
嵌入式linux應用開發 |
13.1 IPC-共享內存;13.2 IPC-消息隊列;13.3 IPC-信號燈集 |
第 14 天
|
嵌入式linux應用開發 |
14.1 TCP/IP 協議概述;14.2 OSI 參考模型;14.3 TCP 和 UDP;14.4 網絡編程 |
第 15 天
|
嵌入式linux應用開發 |
15.1 socket 概述;15.2 socket 類型;15.3 地址結構相關處理;15.4 數據存儲優先順序;15.5 地址格式轉化 |
第 16 天
|
嵌入式linux應用開發 |
16.1 socket 基礎編程;16.2 網絡高級編程;16.3 廣播和組播;16.4 I/O 模型;16.5 數據庫開發 |
第 17 天
|
項目實戰 |
網絡實戰項目-在線詞典…… |
第 18 天
第 19 天
第 20 天
第 21 天
第 22 天
|
ARM 五天課程
|
本單元內容包括 ARM 處理器體系結構、編程環境、指令集、尋址方式、調試、匯編和混合編程、 ARM 的常用接口開發及硬件電路設計基礎(包括 IO、串口、看門狗、實時時鐘、 SPI、 IIC 等)。 |
第 23 天
|
嵌入式linux系統開發 |
23.1 嵌入式系統介紹;123.2 嵌入式 linux 系統構成;23.3 Gcc 介紹;23.4 Gnu 工具鏈介紹;23.5 Crosstool 介紹;23.6 嵌入式 linux 開發環境搭建;1.7 Bootloader 的工作原理 |
第 24 天
|
嵌入式linux系統開發 |
24.1 u-boot 簡介;24.2 u-boot 命令介紹;124.3 u-boot 目錄結構;24.4 u-boot 的編譯;24.5 u-boot 命令的添加 |
第 25 天
|
嵌入式linux內核及驅動開發 |
25.1 Linux 內核簡介;25.2 Linux 內核源碼層次分析;25.3 嵌入式 linux 移植介紹;25.4 Linux 內核介紹;25.5 Linux 內核特點;25.6 Linux 內核源代碼結構;25.7 Linux 內核選項解析;25.8 Linux 內核編譯鏈接;25.9 內核模塊編譯、使用方法 |
第 26 天
|
嵌入式linux內核及驅動開發 |
26.1. Linux 內核調試概述;26.2. Linux 內核的打印函數;26.3. Linux 內核啟動過程錯誤分析;26.4. 解析 oops 信息;26.5. 常用調試方法和工具;26.6. 集成部署 Linux 文件系統;26.7. Linux 根文件系統制作;26.8. 文件系統和存儲設備的選擇;26.9. 通過 ramdisk 掛載根文件系統 |
第 27 天
|
嵌入式linux內核及驅動開發 |
27.1 linux 內核模塊開發;27.2 模塊外部傳參;27.3 模塊符號導出;27.4 Linux 設備驅動分類;27.5 Linux 字符設備驅動結構;27.6 字符設備驅動程序;27.7 Linux 字符設備驅動實例;27.8 Linux 并發控制;27.9 Linux 內核 原子操作實現;27.10 Linux 內核自旋鎖 讀寫鎖 順序鎖實現 |
第 28 天
|
嵌入式linux內核及驅動開發 |
28.1Linux 并發控制信號量;28.2 設備 I/O 模型;28.3 阻塞和非阻塞;28.4 等待隊列;28.5 多路復用;28.6 異步通知;28.7 次設備號識別;28.8 自動創建設備節點 |
第 29 天
|
嵌入式linux內核及驅動開發 |
29.1 內核中時間流;29.2 定時器;29.3 Kobject;29.4 總線設備驅動模型;29.5 Platform 總線 |
第 30 天
|
嵌入式linux內核及驅動開發 |
30.1 中斷概述;30.2 中斷處理程序實現;30.3 Led 驅動程序實現;30.4 Beep 驅動程序實現 |
第 31 天
|
嵌入式linux內核及驅動開發 |
31.1 設備樹介紹;31.2 按鍵中斷程序實現;31.3 Adc 電壓采集驅動實現 |
第 32 天
|
嵌入式linux內核及驅動開發 |
32.1 spi 和 i2c 驅動程序實現;32.2 lcd 驅動程序實現;32.3 高級驅動介紹 |
第 33--40 天
|
項目實戰 |
倉儲物聯網系統項目:1)基于 cortex A9 的主控中心,是系統的核心。將整個系統分為多個功能的單個線程,線程間通過互斥鎖、條件變量、信號量、共享內存和消息隊列等同步、互斥通信機制,實現數據的處理,以及對各種服務,請求的響應。
2)基于 M0(LPC11C14)數據采集端, 通過 M0 端的溫濕華 清 遠 見 — 中 國 嵌 入 式 教 育 第 一 品 牌度、光敏、煙霧、三軸加速度等傳感器完成數據的采集,以及響應警報命令, RFID 完成貨物的進庫、出庫。
3) 基于 Zigbee 完成 M0 與 A9的數據傳輸,前端完成遠程顯示、控制終端硬件。網頁前端主要實時顯示進出庫的貨物信息,環境參數信息以及進出貨物和環境參數的歷史記錄。同時可以在網頁前端發送命令控制相關的操作。
|