【課程背景】
嵌入式系統(tǒng)無(wú)疑是當(dāng)前熱門有發(fā)展前途的IT應(yīng)用領(lǐng)域之一,像常見到的手機(jī)、PDA、機(jī)頂盒、高清電視(HDTV)、路由器、汽車電子、智能家電、醫(yī)療儀器、航天航空設(shè)備等等都是典型的嵌入式系統(tǒng)。目前我國(guó)嵌入式系統(tǒng)發(fā)展大制約因素是稀缺人才,這主要有兩方面的原因:一是與目前我們高校的專業(yè)設(shè)置有關(guān),我國(guó)高校的計(jì)算機(jī)教育普遍以應(yīng)用軟件為主,很少涉及嵌入式軟件的課程,因此企業(yè)很難招聘到馬上可以投入嵌入式軟件開發(fā)的實(shí)戰(zhàn)型人才;二是嵌入式領(lǐng)域門檻相對(duì)較高,知識(shí)要求比較全面,而且需要一定的實(shí)驗(yàn)環(huán)境(開發(fā)板和工具軟件)和有經(jīng)驗(yàn)的人進(jìn)行指導(dǎo)。
【課程目的】
幫助學(xué)員了解嵌入式 Linux 驅(qū)動(dòng)開發(fā)相關(guān)概念及開發(fā)流程,了解驅(qū)動(dòng)開發(fā)的關(guān)鍵技術(shù)點(diǎn),重點(diǎn)講解嵌入式 Linux 下常用接口驅(qū)動(dòng)的編寫方法,快速掌握其要點(diǎn)。
【課程內(nèi)容】
部分:LINUX 平臺(tái)搭建與環(huán)境熟悉了解 Linux 系統(tǒng);區(qū)分各種版本的 Linux 系統(tǒng),以便于拓展 Linux 視野。
1、Linux 簡(jiǎn)介;
2、Linux 系統(tǒng)的主要特點(diǎn);
3、Linux 的組成;
4、主要的 Linux 版本;
5、嵌入式 Linux 簡(jiǎn)介與發(fā)展、
第二部分:虛擬機(jī)安裝和 LINUX 系統(tǒng)安裝
1、虛擬機(jī)安裝;
2 、 Linux 系統(tǒng)的安裝;
3 、 Linux 系統(tǒng)的常用軟件的安裝;
4 、 Linux 快速入門
5 、熟悉運(yùn)用 Linux 環(huán)境下,常用命令的操作與系統(tǒng)設(shè)置,如常用的 Shell;掌握基本的 Shel l應(yīng)用
第三部分:嵌入式 LINUX 環(huán)境搭建
1、建立嵌入式 Linux 開發(fā)環(huán)境
2、 熟悉嵌入式開發(fā)平臺(tái)
3、 嵌入式 Linux 開發(fā)工具
4、Linux 下的調(diào)試技巧
5、MAKE 工程管理器
6、 硬件環(huán)境的搭建;arm-linux-gcc 與 gcc安裝配置
第四部分:U-Boot:了解 U-Boot 的作用及工作流程;了解 Bootloader 的代碼結(jié)構(gòu)、編譯過程;移植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、設(shè)置 u-boot 環(huán)境變量
11、u-boot 驅(qū)動(dòng)添加,如網(wǎng)卡:DM9000
第五部分:LINUX 內(nèi)核移植:熟悉內(nèi)核的原碼結(jié)構(gòu)和 kbuild Makefile 語(yǔ)法;掌握和內(nèi)核、驅(qū)動(dòng)模塊編譯相關(guān)的原理及方法。
1、Linux 內(nèi)核介紹
2、Linux 內(nèi)核特點(diǎn)
3、Linux 內(nèi)核源代碼結(jié)構(gòu)
4、Linux 內(nèi)核選項(xiàng)解析
5、Linux 內(nèi)核編譯鏈接
6、內(nèi)核模塊編譯、使用方法
第六部分:LINUX 根文件系統(tǒng)
1、busybox 包移植、編譯
2、Linux 跟文件系統(tǒng)制作過程
3、根文件系統(tǒng)介紹. nfs文件服務(wù)器系統(tǒng)搭建
第七部分:LINUX 驅(qū)動(dòng)開發(fā)
1、字符型 LED 驅(qū)動(dòng)開發(fā)(GPIO 口驅(qū)動(dòng))
2、按鍵驅(qū)動(dòng)開發(fā)(中斷驅(qū)動(dòng),在驅(qū)動(dòng)中中斷程序的編寫,消息隊(duì)列的應(yīng)用
3、ADC 驅(qū)動(dòng)開發(fā)
4、網(wǎng)卡驅(qū)動(dòng)開發(fā)
5、串口驅(qū)動(dòng)開發(fā)
6、液晶屏(TFT彩屏驅(qū)動(dòng)開發(fā)
7、觸摸屏驅(qū)動(dòng)+tslib(中間插件移植與設(shè)置),
8、IIS驅(qū)動(dòng)開發(fā)+maplay 移植與應(yīng)用(mp3播放)
第八部分:LINUX 應(yīng)用學(xué)習(xí),
1、Linux 系統(tǒng)中的進(jìn)程的概念,在應(yīng)用程序中線程與父子進(jìn)程的創(chuàng)建與應(yīng)用
2、線程之間、進(jìn)程之間的通信
3、進(jìn)程間通信基本概念
4、信號(hào)(SIGNAL)
5、內(nèi)存映射(MAPPED MEMORY)
6、消息隊(duì)列(MESSAGE QUEUE)
7、信號(hào)量(SEMAPHORE)
8、tcPip 協(xié)議在應(yīng)用程序中的編程開發(fā)(SOCKET 套接字編程開發(fā))
8.1、ISO/OSI 七層協(xié)議模型與 IP 網(wǎng)絡(luò)四層模式
8.2、TCP/IP 協(xié)議簇
8.3、基于嵌入式 Linux 的 TCP/IP 網(wǎng)絡(luò)結(jié)構(gòu)
8.4、基于嵌入式 Linux 的 SOCKET 編程
第九部分:QT 移植與開發(fā)
1、嵌入式 LinuxGUI 介紹
2、嵌入式 QT 開發(fā)包移植
第十部分:嵌入式系統(tǒng)應(yīng)用程序,驅(qū)動(dòng)程序調(diào)試
1、Linux 基本工具調(diào)試使用。GDB,insight 調(diào)試等
2、Linux 應(yīng)用程序的編程
3、嵌入式產(chǎn)品程序打包與發(fā)布
第十一部分:嵌入式項(xiàng)目綜合調(diào)試,產(chǎn)品發(fā)布
本課程將通過一個(gè)真實(shí)完整的項(xiàng)目案例,讓學(xué)員了解真實(shí)項(xiàng)目的開發(fā)流程,掌握如何將所學(xué)知識(shí)應(yīng)用到項(xiàng)目開發(fā)中。將模擬真實(shí)項(xiàng)目的管理過程,培養(yǎng)學(xué)員項(xiàng)目團(tuán)隊(duì)協(xié)同開發(fā)能力,項(xiàng)目文檔編寫能力和新知識(shí)的學(xué)習(xí)能力,為下一步就業(yè)做好知識(shí)上和心理上的充分準(zhǔn)備
【教學(xué)環(huán)境】
【課程優(yōu)勢(shì)】
【名師介紹】
黃英涌--嵌入式工程師
信盈達(dá)講師,5年工作經(jīng)驗(yàn),熟悉8位單片機(jī)、32位ARM、操作系統(tǒng)LINUX,有豐富的C51單片機(jī)、ARM、LINUX研發(fā)及培訓(xùn)經(jīng)驗(yàn)。
近成功開發(fā)及參與項(xiàng)目如下:
戶外照明及監(jiān)控GPS控制器(STC89C516)
大功率LED工業(yè)控制器(S3C2440)
96%滿意度
信盈達(dá)嵌入式實(shí)訓(xùn)學(xué)院
綜合
環(huán)境 : 4.8師資 : 4.7教學(xué) : 4.8