
嵌入式Linux驅動培訓
第 一部分:LINUX平臺搭建與環境熟悉
了解Linux系統;區分各種版本的Linux系統,以便于拓展 Linux視野。
1、Linux 簡介;
2、Linux 系統的主要特點;
3、Linux 的組成;
4、主要的 Linux 版本;
5、 嵌入式 Linux簡介與發展
第二部分虛擬機安裝和LINUX系統安裝
1、 虛擬機安裝;
2、 Linux系統的安裝;
3、 Linux系統的常用軟件的安裝;
4、 Linux入門
5、 熟悉運用 Linux環境下,常用命令的操作與系統設置,如常用的 Shell;掌握基本的 Shell 應用
第三部分:嵌入式LINUX環境搭建
1、 建立嵌入式 Linux開發環境
2、 熟悉嵌入式開發平臺
3、 嵌入式 Linux開發工具
4、 Linux下的調試技巧
5、 MAKE工程管理器
6、 硬件環境的搭建;arm-linux-gcc與 gcc安裝配置
第四部分: U-Boot: 了解 U-Boot 的作用及工作流程;了解Bootloader 的代碼結構、編譯過程;移植U-Boot;掌握常用的U-Boot命令。
1、 Bootloader介紹
2、 u-boot工程介紹
3、 u-boot的編譯使用
4、 u-boot源碼分析
5、 u-boot資源分配
6、 配置編譯u-boot
7、 u-boot移植過程
8、 u-boot常用命令操作
9、 添加u-boot新命令
10、設置u-boot環境變量
11、u-boot驅動添加如網卡:DM9000
第五部分:LINUX內核移植:熟悉內核的原碼結構和kbuild Makefile語法;掌握和內核、驅動模塊編譯相關的原理及方法。
1、 Linux內核介紹
2、Linux內核特點
3、 Linux內核源代碼結構
4、Linux內核選項解析
5、Linux內核編譯鏈接
6、內核模塊編譯、使用方法
第六部分:LINUX根文件系統
1、busybox 包移植、編譯
2、Linux跟文件系統制作過程
3、根文件系統介紹
4. nfs文件服務器系統搭建
第七部分:LINUX驅動開發
驅動開發是嵌入式Linux開發難度 高的內容,也是目前嵌入式行業緊缺的人才之一。本課程介紹嵌入式Linux驅動開發相關概念及開發流程,了解驅動開發的關鍵技術點,重點講解嵌入式Linux下常用接口驅動的編寫方法,包括
1、字符型LED驅動開發(GPI0口驅動)
2、按鍵驅動開發(中斷驅動,在驅動中中斷程序的編寫,消息隊列的應用
3、ADC驅動開發
4、網卡驅動開發
5、串口驅動開發
6、液晶屏(TFT彩屏驅動開發
7、觸摸屏驅動+tslib(中間插件移植與設置),
8、USB驅動開發+USB無線網卡移植
9、IIS驅動開發+maplay移植與應用(mp3播放)+mplayer移植與應用(視頻播放Mp4/廣告機等播放)
10、SD驅動開發
11、RTC驅動開發
12、電源管理方法
第八部分:LINUX應用學習
課程:嵌入式Linux應用開發和系統開發是嵌入式Linux中重要的一部分,也是企業人才需求廣 的一部分。主要是精通嵌入式Linux下的程序設計,熟練掌握嵌入式Linux的開發環境、系統編程以及網絡編程,熟悉C++、QT編程并且深刻體會 整個嵌入式Linux項目開發流程,強化學員對Linux應用開發的能力.
1、Linux系統中的進程的概念,在應用程序中線程與父子進程的創建與應用
2、線程之間、進程之間的通信
3、進程間通信基本概念
4、管道(PIPE)
5、信號(SIGNAL)
6、內存映射(MAPPED MEM0RY)
7、消息隊列(MESSAGE QUEUE)
8、信號量(SEMAPH0RE)
9、共享內存(SHARE MEM0RY)@
10、tcPip協議在應用程序中的編程開發(S0CKET套接字編程開發)
10.1. IS0/0SI七層協議模型與IP網絡四層模式
10.2.TCP/IP協議簇
10.3. 基于嵌入式Linux的TCP/IP網絡結構
10.4. 基于嵌入式Linux的S0CKET編程
10.5.UDP與TCP的區別
10.6. UDP SERVER-CLIENT關系程
11、文件讀寫與存儲
第九部分:QT移植與開發
通過本課程的學習,學員能夠了解嵌入式Linux下的幾種常見GUI及其特點,重點能掌握QT的有關內容,具備QT程序設計能力。了解嵌入式數據庫的配置與開發
1 、嵌入式Linux GUI介紹
2、嵌入式QT開發包移植
3、QT介紹及其信號插槽機制
4、 QT圖形界面編程技術
5、QT應用程序與Linux驅動的銜接
6、 QT在實際項目中具體應用
第十部分:無線通訊應用
1、無線wifi模塊應用
2、3G模塊應用
第十一分布:嵌入式系統應用程序,驅動程序調試
1、Linux基本工具調試使用。GDB,insight調試等
2、Linux應用程序的編程
3、嵌入式產品程序打包與發布
第十二部分:嵌入式項目綜合調試,產品發布