114培訓網(wǎng)歡迎您來到南京英貝得教育信息咨詢有限公司!

400-850-8622

全國統(tǒng)一學習專線 8:30-21:00

ARM嵌入式Linux高級驅(qū)動研修班課程介紹

授課機構(gòu):南京英貝得教育信息咨詢有限公司

關(guān)注度:1090

課程價格: ¥6800.00元

上課地址:請咨詢客服

開課時間:滾動開班

咨詢熱線:400-850-8622

在線報名

課程詳情在線報名

更新時間:2025-01-14
ARM嵌入式Linux高級驅(qū)動研修班課程介紹 課程背景 嵌入式軟件開發(fā)無疑是當今最熱門的行業(yè),嵌入式軟件工程師的薪資比普通的軟件工程師的薪資平均高50%以上。隨著智能電網(wǎng)、物聯(lián)網(wǎng)的建設(shè),社會對嵌入式人才的需求越來越多。 很多同學或在職人員已經(jīng)意識到了嵌入式開發(fā)的重要性,已經(jīng)開始自學嵌入式開發(fā)技術(shù),但是因為嵌入式開發(fā)不同于普通的純軟件開發(fā),它是綜合了計算機軟、硬件的一門綜合*,涉及模擬電路,數(shù)字電路,C語言、計算機組成原理,微機控制技術(shù),網(wǎng)絡(luò)技術(shù),數(shù)據(jù)結(jié)構(gòu)等課程,很多同學面對嵌入式涉及的這么多課程和知識點,往往不知道從何處下手開始學習嵌入式。 嵌入式Linux開發(fā)主要分為2大部分,即嵌入式Linux應(yīng)用程序開發(fā)和嵌入式Linux底層驅(qū)動程序開發(fā)。嵌入式Linux應(yīng)用程序開發(fā)是指在現(xiàn)有的嵌入式Linux平臺上進行應(yīng)用層程序開發(fā),應(yīng)用程序開發(fā)人員不用關(guān)心底層的硬件平臺和設(shè)備驅(qū)動程序,只是在應(yīng)用層實現(xiàn)相關(guān)的業(yè)務(wù)流程和邏輯即可,從這個角度看,嵌入式Linux應(yīng)用程序開發(fā)和普通的基于桌面版Linux和服務(wù)器Linux的應(yīng)用程序開發(fā)基本類似。 相比嵌入式Linux應(yīng)用程序開發(fā),嵌入式Linux驅(qū)動開發(fā)無論是從技術(shù)的難度,還是對開發(fā)人員的要求都要高一個層次,嵌入式驅(qū)動開發(fā)人員主要為具體硬件設(shè)備開發(fā)相應(yīng)的設(shè)備驅(qū)動程序,構(gòu)建嵌入式底層開發(fā)平臺,這就要求嵌入式驅(qū)動開發(fā)人員不但要懂應(yīng)用的開發(fā),還需要非常理解具體硬件設(shè)備的工作原理以及l(fā)inux系統(tǒng)內(nèi)核的原理,這樣才能開發(fā)出高效,穩(wěn)定的設(shè)備驅(qū)動程序。因此,一個優(yōu)秀的嵌入式系統(tǒng)驅(qū)動工程師非常難找,年薪一般可達15萬 ~ 30萬以上。 本課程即是英貝得嵌入式針對有興趣學習嵌入式Linux系統(tǒng)驅(qū)動開發(fā)又不知道從何處著實開始學習嵌入式Linux開發(fā)的在校學生以及社會在職人員而開設(shè)的。 課程目標 本課程采用理論教學與實驗相結(jié)合的方式,系統(tǒng)地介紹嵌入式Linux系統(tǒng)開發(fā)的流程,嵌入式Linux系統(tǒng)移植的方法,Bootloader的原理,嵌入式Linux下設(shè)備驅(qū)動程序開發(fā)過程。通過本課程的學習,學員可以掌握嵌入式Linux下字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)設(shè)備、LCD顯示屏、觸摸屏,USB設(shè)備等嵌入式硬件的設(shè)備的驅(qū)動開發(fā),同時掌握嵌入式Linux的系統(tǒng)驅(qū)動開發(fā)和分析的一般方法,達到舉一反三,靈活運用的效果。 培養(yǎng)對象 ◆ARM嵌入式Linux初學者 ◆ARM嵌入式Linux愛好者 ◆有志于從事ARM嵌入式Linux系統(tǒng)驅(qū)動程序開發(fā)的工程師 入學要求 學員學習本課程應(yīng)具備下列基礎(chǔ)知識: ◆具備嵌入式linux應(yīng)用程序開發(fā)基礎(chǔ) ◆電子類、計算機類、通信類、自動化類高年級本科生或研究生 培訓教材 ◆《ARM嵌入式Linux系統(tǒng)驅(qū)動研發(fā)工程師培訓講義》 ◆《ARM嵌入式Linux系統(tǒng)驅(qū)動研發(fā)工程師培訓實驗教程》 學習周期 二個半月,160課時 實驗環(huán)境 為了保證培訓效果,增加互動環(huán)節(jié),我們堅持小班授課,每期報名人數(shù)限15人,多余人員安排到下一期進行。每個學員配備一套嵌入式飛凌ARM9學習開發(fā)板。 課程大綱(2011-02-12更新) 歡迎進入嵌入式Linux高級驅(qū)動討論區(qū),請登錄 時間 課程大綱 *部分 ARM嵌入式Linux設(shè)備驅(qū)動開發(fā)基礎(chǔ) 第 一 天 上午 嵌入式系統(tǒng)的開發(fā)模型 ARM體系架構(gòu)及編程基礎(chǔ) ADS開發(fā)工具的使用 S3C2440微處理器介紹及接口設(shè)計 S3C2440的地址空間、時鐘系統(tǒng)、中斷系統(tǒng)及GPIO編程 FL2440開發(fā)板電路原理圖介紹 下午 實驗?zāi)康模? 練習裸機環(huán)境下ARM9的中斷及GPIO編程 任務(wù)描述: 當用戶按下某一個按鍵時,對應(yīng)的LED燈亮,再次按下該按鍵時,對應(yīng)的LED燈滅。要求不使用操作系統(tǒng),按鍵采用中斷機制實現(xiàn)。 第 二 天 上午 Bootloader的概念及功能 UBOOT的結(jié)構(gòu)及源碼組織 UBOOT的配置、編譯及連接過程 UBOOT加載內(nèi)核過程源碼分析 UBOOT的常用命令 UBOOT的移植 下午 實驗?zāi)康模? 練習UBOOT的使用及移植 任務(wù)描述: 移植UBOOT的FL2440開發(fā)板上,F(xiàn)L2440開發(fā)板上電后,UBOOT能正常運行并能正常引導(dǎo)啟動linux內(nèi)核。 第 三 天 上午 Linux2.6內(nèi)核的內(nèi)存管理機制 Linux系統(tǒng)的內(nèi)核空間和用戶空間 Linux內(nèi)核的虛擬地址和物理地址 Linux虛擬內(nèi)存到物理內(nèi)存的映射機制 ARM存儲管理單元MMU,頁表介紹,段頁式存儲管理 Linux內(nèi)核編程常用存儲管理函數(shù)介紹 下午 實驗?zāi)康模? 練習如何建立頁表,深入理解MMU,,頁表是如何完成虛擬地址到物理地址的映射過程。 任務(wù)描述: 在裸機環(huán)境下建立一個頁表,啟用MMU,將不同的虛擬地址空間映射到同一個物理地址空間(LED的物理地址),映射完成后,在應(yīng)用程序中操作2個虛擬地址,都可以來操作該LED.。 第 四 天 上午 Linux內(nèi)核中斷管理系統(tǒng) Linux內(nèi)核中斷響應(yīng)流程分析 Linux內(nèi)核中斷管理相關(guān)函數(shù)解析 Linux中斷處理的上半部分和下半部分 Linux定時器管理 Linux硬件定時器及軟件定時器的使用 下午 實驗?zāi)康模? 練習linux系統(tǒng)下的中斷編程及硬件定時器編程 任務(wù)描述: 編寫一個硬件定時器驅(qū)動程序,在其中一個PIN腳上周期性輸出PWM波形,應(yīng)用程序可以啟動,停止PWM波形的輸出,同時可以改變PWM波的頻率和占空比。 第 五 天 上午 Linux2.6 設(shè)備驅(qū)動模型 Linux2.6 總線、設(shè)備及設(shè)備驅(qū)動的概念及關(guān)系 Linux2.6 sysfs文件系統(tǒng) Linux2.6 設(shè)備及設(shè)備驅(qū)動程序架構(gòu) 下午 實驗?zāi)康模? 練習基于Linux2.6 的設(shè)備驅(qū)動模型開發(fā)設(shè)備驅(qū)動; 任務(wù)描述: 基于Linux2.6的platform設(shè)備驅(qū)動模型重寫LED字符設(shè)備驅(qū)動。 第 六 天 上午 Linux設(shè)備驅(qū)動程序中的并發(fā)控制、信號量; Linux設(shè)備驅(qū)動程序中的阻塞與非阻塞IO Linux設(shè)備驅(qū)動程序中的輪詢操作 Linux設(shè)備驅(qū)動程序中的異步通知和異步IO; 下午 實驗?zāi)康模? 練習在Linux設(shè)備驅(qū)動程序中使用并發(fā)控制、阻塞和非阻塞、輪詢和異步通知 任務(wù)描述: 在Linux LED驅(qū)動中增加并發(fā)控制 在Linux globlemem驅(qū)動中增加阻塞和非阻塞,并支持輪詢操作; 在Linux 按鍵驅(qū)動中增加異步通知 第二部分 ARM嵌入式Linux設(shè)備驅(qū)動程序開發(fā) 第 七 天 上午 LCD屏設(shè)備驅(qū)動程序設(shè)計 TFT LCD屏硬件工作原理分析 S3C2440 LCD接口控制信號及相關(guān)寄存器分析 TFT LCD控制信號時序分析 下午 實驗?zāi)康模? 練習S3C2440 LCD接口的硬件編程 任務(wù)描述: 裸機環(huán)境下編寫LCD驅(qū)動程序,在LCD屏上顯示一幅給定的圖片 第 八 天 上午 嵌入式Linux下LCD屏驅(qū)動程序框架 嵌入式Linux下LCD屏驅(qū)動源碼分析 嵌入式Linux下LCD屏驅(qū)動的移植 下午 實驗?zāi)康模? 深入理解嵌入式Linux LCD屏設(shè)備驅(qū)動,練習嵌入式Linux LCD屏設(shè)備驅(qū)動的移植與開發(fā); 任務(wù)描述: 在移植的Linux內(nèi)核上增加對LCD屏驅(qū)動的支持. 讀Linux內(nèi)核LCD屏驅(qū)動源碼,完成LCD屏驅(qū)動源碼分析筆記 第 九 天 上午 嵌入式Linux網(wǎng)卡驅(qū)動程序設(shè)計 S3C2440與網(wǎng)絡(luò)芯片DM9000的接口電路分析 網(wǎng)絡(luò)芯片DM9000的硬件工作原理 下午 實驗?zāi)康模? 深入理解S3C2440與DM9000的接口電路及DM9000的硬件工作原理,練習DM9000的硬件編程。 任務(wù)描述: 裸機環(huán)境下完成DM9000驅(qū)動程序,完成ARP報文的收發(fā)。 第 十 天 上午 嵌入式Linux下網(wǎng)卡驅(qū)動程序框架 Linux下網(wǎng)絡(luò)協(xié)議棧分析 嵌入式Linux網(wǎng)絡(luò)驅(qū)動源碼分析 嵌入式Linux網(wǎng)卡驅(qū)動移植 下午 實驗?zāi)康模? 深入理解嵌入式Linux網(wǎng)卡驅(qū)動框架,練習嵌入式linux環(huán)境下網(wǎng)卡驅(qū)動的移植 任務(wù)描述: 在移植的Linux內(nèi)核上增加對DM9000網(wǎng)卡驅(qū)動的支持。 讀linux DM9000網(wǎng)卡驅(qū)動源碼,完成源碼分析理解筆記; 第十一天 上午 嵌入式Linux Nor Flash驅(qū)動程序設(shè)計 嵌入式Linux Nor Flash硬件工作原理及電路原理圖分析 嵌入式Linux MTD子系統(tǒng)框架及源碼分析 嵌入式Linux Nor Flash驅(qū)動程序源碼分析 下午 實驗?zāi)康模? 深入理解嵌入式Linux環(huán)境下MTD子系統(tǒng)的工作原理,練習嵌入式Linux環(huán)境下NorFlash驅(qū)動編程。 任務(wù)描述: 在移植的Linux內(nèi)核上增加對NOR FLASH驅(qū)動的支持; 讀Linux NorFlash驅(qū)動源碼,完成源碼分析理解筆記 第十二天 上午 嵌入式Linux NAND FLASH驅(qū)動程序設(shè)計 NAND FLASH硬件工作原理及NAND FLASH操作流程 S3C2440 NAND FLASH控制器接口及電路原理圖分析 NAND FLASH讀寫時序分析 下午 實驗?zāi)康模? 深入理解NAND FLASH的操作流程,練習NAND FLASH硬件編程 任務(wù)描述: 裸機環(huán)境下完成FL2440上NAND FLASH驅(qū)動程序,實現(xiàn)對NAND FLASH的讀、寫、擦除操作。 第十三天 上午 嵌入式Linux NAND FLASH驅(qū)動程序框架 嵌入式Linux NAND FLASH驅(qū)動程序源碼組織 嵌入式Linux NAND FLASH驅(qū)動程序源碼分析 嵌入式Linux NAND FLASH 函數(shù)調(diào)用流程 下午 實驗?zāi)康模? 深入理解嵌入式Linux NAND FLASH驅(qū)動框架,練習嵌入式Linux下NAND FLASH驅(qū)動程序開發(fā) 任務(wù)描述: 在移植的Linux內(nèi)核上增加對NAND FLASH的支持; 讀Linux nand flash驅(qū)動源碼,完成源碼分析理解筆記 第十四天 上午 嵌入式Linux 觸摸屏驅(qū)動程序設(shè)計 電阻式觸摸屏硬件工作原理 S3C2440觸摸屏接口電路原理圖分析 嵌入式Linux觸摸屏驅(qū)動程序框架 下午 實驗?zāi)康模? 深入理解觸摸屏硬件工作流程,練習S3C2440下觸摸屏硬件工作編程 任務(wù)描述: 裸機環(huán)境下完成基于S3C2440的觸摸屏驅(qū)動程序,實現(xiàn)對觸摸上位置坐標的測量 第十五天 上午 嵌入式Linux觸摸屏驅(qū)動程序源碼分析 嵌入式Linux輸入子系統(tǒng)框架 嵌入式Linux輸入子系統(tǒng)工作原理 嵌入式Linux輸入子系統(tǒng)源碼分析 下午 實驗?zāi)康模? 深入理解嵌入式Linux觸摸屏、輸入子系統(tǒng)程序框架,練習嵌入式Linux下觸摸屏及其他輸入設(shè)備的驅(qū)動程序開發(fā)。 任務(wù)描述: 在移植的Linux內(nèi)核上增加對觸摸屏驅(qū)動的支持 讀Linux觸摸屏驅(qū)動源碼,完成源碼分析筆記 第十六天 上午 嵌入式Linux I2C總線驅(qū)動程序設(shè)計 I2C總線硬件工作原理及電路原理圖分析 I2C總線時序分析 S3C2440 I2C總線控制器工作原理 下午 實驗?zāi)康模? 深入理解I2C總線硬件工作原理,練習I2C總線硬件編程 任務(wù)描述: 裸機環(huán)境下完成S3C2440 I2C總線硬件編程,通過I2C總線驅(qū)動讀寫EEPROM AT24C02 第十七天 上午 嵌入式Linux I2C總線驅(qū)動程序框架及源碼組織 嵌入式Linux I2C 控制器驅(qū)動 嵌入式Linux I2C 核心 嵌入式 Linux I2C 設(shè)備驅(qū)動程序源碼分析 下午 實驗?zāi)康模? 深入理解嵌入式Linux I2C總線驅(qū)動程序框架,練習嵌入式Linux下I2C設(shè)備驅(qū)動程序的開發(fā) 任務(wù)描述: 在移植的linux內(nèi)核上增加對I2C設(shè)備AT24C02的驅(qū)動支持 讀I2C總線驅(qū)動源碼,完成I2C總線設(shè)備驅(qū)動源碼分析筆記 第十八天 上午 USB設(shè)備基本概念,USB設(shè)備,接口,端口,傳輸模式 USB主控制器,USB設(shè)備, S3C2440 USB主控制器介紹及USB主控制器接口 USB總線控制器驅(qū)動框架 下午 USB主控制器源碼分析 第十九天 上午 USB設(shè)備驅(qū)動程序框架及源碼組織 USB核心子系統(tǒng) USB設(shè)備驅(qū)動程序開發(fā)一般方法 USB請求塊 下午 EZ-USB Cy7c68013a-56 USB2.0 開發(fā)板介紹及原理 EZ-USB Cy7c68013a-56 USB2.0 開發(fā)板的使用 第二十天 實驗?zāi)康模? 深入理解linux下USB設(shè)備驅(qū)動框架,練習嵌入式Linux下USB設(shè)備驅(qū)動程序開發(fā)。 任務(wù)描述: 開發(fā)EZ-USB Cy7c68013a-56 USB2.0 開發(fā)板的嵌入式Linux設(shè)備驅(qū)動程序,在FL2440開發(fā)板上通過USB接口控制EZ-USB Cy7c68013a-56 USB2.0 開發(fā)板的LED燈。 讀Linux USB設(shè)備驅(qū)動源碼,完成源碼分析筆記
姓名不能為空
手機號格式錯誤