- 課程詳情
- 上課校區(qū)(1)
第一天
學(xué)習(xí)目標(biāo)通過(guò)本課學(xué)習(xí),學(xué)員可以:從用戶(hù)設(shè)備I/O編程角度深入了解設(shè)備驅(qū)動(dòng)的原理;通過(guò)了解字符設(shè)備驅(qū)動(dòng)框架和具體硬件設(shè)備I/O操作,能夠進(jìn)行字符設(shè)備驅(qū)動(dòng)開(kāi)發(fā);了解內(nèi)核的設(shè)備模型及、li*****14內(nèi)核設(shè)備樹(shù)模型及掌握udev的使用。
1.***UX字符設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)
1.1 LINUX字符設(shè)備驅(qū)動(dòng)基礎(chǔ)
1.2 字符設(shè)備驅(qū)動(dòng)程序?qū)崿F(xiàn)框架與典型驅(qū)動(dòng)分析
1.3 用戶(hù)空間與內(nèi)核空間的數(shù)據(jù)傳輸
1.4 同步、互斥、阻塞、睡眠機(jī)制
1.5 Linux設(shè)備模型與sysfs文件系統(tǒng)
1.6 Li******14 設(shè)備樹(shù)模型
1.7 udev與devfs文件系統(tǒng)
【實(shí)驗(yàn)】
1、驅(qū)動(dòng)開(kāi)發(fā)編程環(huán)境與內(nèi)核配置、編譯
2、編寫(xiě)模塊化字符設(shè)備驅(qū)動(dòng)程序與測(cè)試
3、如何為內(nèi)核程序傳遞參數(shù)
4、在驅(qū)動(dòng)代碼中加入創(chuàng)建proc結(jié)點(diǎn)方法
5、蜂鳴器驅(qū)動(dòng)程序編寫(xiě)與測(cè)試
6、編寫(xiě)驅(qū)動(dòng)實(shí)現(xiàn)包含等待隊(duì)列、信號(hào)量、fifo等功能
7、學(xué)會(huì)利用udev和sysfs文件系統(tǒng)動(dòng)態(tài)創(chuàng)建設(shè)備結(jié)點(diǎn)
第二天
學(xué)習(xí)目標(biāo)通過(guò)本課習(xí),學(xué)員可以掌握在基本字符設(shè)備驅(qū)動(dòng)的基礎(chǔ)上增加復(fù)雜的內(nèi)核機(jī)制;了解1inux內(nèi)核中斷子系統(tǒng)的實(shí)現(xiàn)原理,掌握l(shuí)inux中斷處理程序編寫(xiě)方法;掌握內(nèi)核延時(shí)機(jī)制及內(nèi)存管理機(jī)制。熟悉基于Cortex-A9 4核處理器的FS4412平臺(tái)
2.設(shè)備驅(qū)動(dòng)中常用的內(nèi)核機(jī)制
2.1 Poll和select操作
2.2 異步通知機(jī)制
2.3 1inux內(nèi)核中斷子系統(tǒng)
2.4 中斷處理程序編寫(xiě)
2.5 驅(qū)動(dòng)程序上/下半部處理與延緩執(zhí)行機(jī)制
2.6 內(nèi)核定時(shí)器與延遲機(jī)制
2.7 內(nèi)核內(nèi)存管理機(jī)制
【實(shí)驗(yàn)】
1、編寫(xiě)驅(qū)動(dòng)實(shí)現(xiàn)包含poll功能
2、編寫(xiě)驅(qū)動(dòng)實(shí)現(xiàn)包含異步通知功能
3、編寫(xiě)秒表字符設(shè)備,掌握定時(shí)器用法
4、編寫(xiě)驅(qū)動(dòng)實(shí)現(xiàn)tasklet功能
5、編寫(xiě)驅(qū)動(dòng)實(shí)現(xiàn)工作隊(duì)列功能
6、FS4412平臺(tái)上按鍵中斷實(shí)驗(yàn)
7、FS4412平臺(tái)上A/D轉(zhuǎn)換實(shí)驗(yàn)
第三天
學(xué)習(xí)目標(biāo)通過(guò)本課學(xué)習(xí),學(xué)員可以:明白Linux中塊設(shè)備驅(qū)動(dòng)的特點(diǎn)及框架,獨(dú)立分析Linux中大部分塊設(shè)備的驅(qū)動(dòng)方法,并熟悉eMMC設(shè)備驅(qū)動(dòng)的特點(diǎn)與框架,具備eMMC驅(qū)動(dòng)程序開(kāi)發(fā)的能力。通過(guò)實(shí)驗(yàn),學(xué)員還可以掌握IDE、Ramdisk驅(qū)動(dòng)移植方法。
3.***UX塊設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)
3.1 塊設(shè)備及其驅(qū)動(dòng)的特點(diǎn)
3.2 兩個(gè)關(guān)鍵結(jié)構(gòu)體GEN_DISK與REQUEST
3.3 塊設(shè)備驅(qū)動(dòng)程序的注冊(cè)與請(qǐng)求處理
3.4 EXYNOS4412上的eMMC控制器簡(jiǎn)介
【實(shí)驗(yàn)】
1、編寫(xiě)簡(jiǎn)單的塊設(shè)備驅(qū)動(dòng)程序
2、實(shí)現(xiàn)RAMDISK驅(qū)動(dòng)
3、FS4412上完成eMMC驅(qū)動(dòng)
第四天
學(xué)習(xí)目標(biāo)學(xué)員可以:深入理解Linux網(wǎng)絡(luò)驅(qū)動(dòng)程序中有關(guān)套接字(socket)、套接字緩沖區(qū)(sk_buff)等概念,了解網(wǎng)絡(luò)驅(qū)動(dòng)程序的數(shù)據(jù)交換過(guò)程。通過(guò)實(shí)際的動(dòng)手操作,學(xué)員將掌握如何移植或編寫(xiě)具體網(wǎng)卡的驅(qū)動(dòng)程序,并在此基礎(chǔ)上實(shí)現(xiàn)更為高級(jí)的網(wǎng)絡(luò)功能。
4.***UX網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)
4.1 OSI網(wǎng)絡(luò)參考模型
4.2 套接字(SOCKET)簡(jiǎn)介
4.3 套接字緩沖區(qū)(SK_BUFF)
4.4 NET_DEVICE結(jié)構(gòu)分析
4.5 數(shù)據(jù)包傳送與接收
4.6 網(wǎng)絡(luò)驅(qū)動(dòng)的中斷處理
4.7 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的基本實(shí)現(xiàn)
5. I2C驅(qū)動(dòng)子系統(tǒng)開(kāi)發(fā)
6. SPI驅(qū)動(dòng)子系統(tǒng)開(kāi)發(fā)
第五天
學(xué)習(xí)目標(biāo)通過(guò)對(duì)Linux幀緩沖內(nèi)容的學(xué)習(xí),學(xué)員可掌握嵌入式Linux顯示驅(qū)動(dòng)程序的開(kāi)發(fā)方法,理解嵌入式Linux圖形驅(qū)動(dòng)程序?qū)崿F(xiàn)機(jī)制,能夠移植或編寫(xiě)嵌入式顯示控制器驅(qū)動(dòng)程序,并完成針對(duì)各種LCD硬件的定制。掌握電容觸摸屏工作原理,能夠移植或編寫(xiě)觸摸屏驅(qū)動(dòng)程序。
7.***UX幀緩沖驅(qū)動(dòng)程序開(kāi)發(fā)
7.1 幀緩沖顯示技術(shù)
7.2 幀緩沖驅(qū)動(dòng)程序顯示原理
7.3 幀緩沖驅(qū)動(dòng)程序的數(shù)據(jù)結(jié)構(gòu)
7.4 幀緩沖驅(qū)動(dòng)程序的API
7.5 幀緩沖驅(qū)動(dòng)程序的基本實(shí)現(xiàn)
7.6 使用高級(jí)圖形庫(kù)
8.電容觸摸屏驅(qū)動(dòng)開(kāi)發(fā)
8.1 電容觸摸屏驅(qū)動(dòng)程序編寫(xiě)
【實(shí)驗(yàn)】
1、熟悉FRAMEBUFFER驅(qū)動(dòng)的結(jié)構(gòu)
2、熟悉FRAMEBUFFER中的重要數(shù)據(jù)結(jié)構(gòu)
3、編寫(xiě)EXYNOS4412彩色LCD控制器驅(qū)動(dòng)程序
4、編寫(xiě)測(cè)試程序控制屏幕顯示
5、編譯高級(jí)圖形庫(kù)例子,顯示圖形
6、熟悉觸屏驅(qū)動(dòng)程序
7、編寫(xiě)觸屏測(cè)試代碼
第六天
學(xué)習(xí)目標(biāo)掌握USB通訊規(guī)范及拓?fù)浣Y(jié)構(gòu)中的主機(jī)控制器、HUB、USB設(shè)備的工作流程;掌握EXYNOS4412 USB device控制器的工作原理。通過(guò)Linux下USB Host驅(qū)動(dòng)和USB Gadget開(kāi)發(fā)內(nèi)容的學(xué)習(xí),學(xué)員將深入理解Linux內(nèi)核USB子系統(tǒng),掌握USB驅(qū)動(dòng)程序編寫(xiě)技術(shù)。經(jīng)過(guò)學(xué)習(xí)后的學(xué)員能夠移植或編寫(xiě)USB Host和USB Gadget設(shè)備驅(qū)動(dòng)程序。
9.***UX下USB驅(qū)動(dòng)開(kāi)發(fā)基礎(chǔ)
9.1 USB規(guī)范介紹
9.2 USB主機(jī)控制器
9.3 USB HUB
9.4 USB設(shè)備狀態(tài)
9.5 USB描述符
9.6 USB請(qǐng)求
9.7 USB通訊數(shù)據(jù)格式
9.8 EXYNOS4412 USB device控制器
9.9 編寫(xiě)usbtransfer固件程序
10****UX下USB驅(qū)動(dòng)高級(jí)開(kāi)發(fā)
10.1 Linux USB驅(qū)動(dòng)層次
10.2 Linux USB主機(jī)控制器驅(qū)動(dòng)介紹
10.3 Linux USB HUB驅(qū)動(dòng)介紹
10.4 Linux USB 設(shè)備驅(qū)動(dòng)程序
10.5 Linux USB Host設(shè)備驅(qū)動(dòng)程序
10.6 Linux USB Gadget設(shè)備驅(qū)動(dòng)程序
11****ux下其它高級(jí)設(shè)備驅(qū)動(dòng)簡(jiǎn)單介紹
11.1 PCI/PCIE設(shè)備驅(qū)動(dòng)介紹
11.2 V4L2攝像頭驅(qū)動(dòng)介紹
11.3 MTD Flash驅(qū)動(dòng)介紹
【實(shí)驗(yàn)】
1、使用usbview工具觀(guān)察USB設(shè)備
2、使用sysfs分析USB層次結(jié)構(gòu)
3、LINUX下編寫(xiě)USB Host設(shè)備驅(qū)動(dòng)
4、LINUX下編寫(xiě)USB Gadget設(shè)備驅(qū)動(dòng)
-
南京校區(qū)
地址:南京市棲霞區(qū)馬群街道天馬路18號(hào)英格瑪尼.芯動(dòng)力文創(chuàng)園B棟
電話(huà):400-029-0976 轉(zhuǎn) **** 查看號(hào)碼
授課老師 更多
-
張老師
計(jì)算機(jī)技術(shù)培訓(xùn)
嵌入式領(lǐng)域超過(guò)10年以上的產(chǎn)品研發(fā)經(jīng)驗(yàn)及管理經(jīng)驗(yàn);精通arm 等多種硬件平臺(tái), 精通uboot,內(nèi)核的移植與開(kāi)發(fā),熟悉多種文件系統(tǒng);精通多種硬件接口的開(kāi)發(fā)及調(diào)試工作;熟悉嵌入式方向的應(yīng)用開(kāi)發(fā); 詳細(xì)
-
余老師
計(jì)算機(jī)技術(shù)培訓(xùn)
有豐富的開(kāi)發(fā)經(jīng)驗(yàn),曾在世界500強(qiáng)企業(yè)擔(dān)任開(kāi)發(fā)工程師、架構(gòu)師、項(xiàng)目經(jīng)理等崗位超10年;精通Java技術(shù)棧,對(duì)SpringBoot、Redis、ElasticSeach、MQ、Docker、SpringCloud等有深入研究,專(zhuān)注于分布式、高可用、高性能、微服務(wù)架構(gòu)的設(shè)計(jì);精通項(xiàng)目開(kāi)發(fā)流程和項(xiàng)目管理;掌握數(shù)據(jù)庫(kù)Oracle、MySql、DB2的設(shè)計(jì)、調(diào)優(yōu)及管理;熟悉Web前端技術(shù)棧;對(duì)大數(shù)據(jù)尤其是數(shù)據(jù)倉(cāng)庫(kù)和BI有深入了解; 詳細(xì)
-
程老師
計(jì)算機(jī)技術(shù)培訓(xùn)
曾參與基于阿里云的智能家居系統(tǒng)、NB-IOT窄帶物聯(lián)網(wǎng)實(shí)驗(yàn)臺(tái)、AIOT人工智能教學(xué)實(shí)驗(yàn)箱等產(chǎn)品研發(fā)工作,其中高校AI工業(yè)互聯(lián)網(wǎng)教學(xué)實(shí)驗(yàn)平臺(tái)曾獲山東省物聯(lián)網(wǎng)協(xié)會(huì)科技進(jìn)步獎(jiǎng)。指導(dǎo)學(xué)生參加全國(guó)大學(xué)生嵌入式芯片與系統(tǒng)設(shè)計(jì)競(jìng)賽、山東省智能控制大賽等多項(xiàng)賽事。擔(dān)任山東農(nóng)業(yè)工程學(xué)院、德州學(xué)院等院校的校外導(dǎo)師。精通嵌入式Linux應(yīng)用開(kāi)發(fā)及多任務(wù)編程。精通STM32單片機(jī)編程及常用的接口和通訊協(xié)議,具備相關(guān)硬件電路設(shè)計(jì)經(jīng)驗(yàn)。掌握ARM體系結(jié)構(gòu)與編程模型,具有uboot/linux內(nèi)核移植、裁剪及驅(qū)動(dòng)開(kāi)發(fā)經(jīng)驗(yàn)。主講課程:《Linux操作系統(tǒng)》《C語(yǔ)言程序設(shè)計(jì)》《ARM體系結(jié)構(gòu)》《stm32》《系統(tǒng)移植》等課程。 詳細(xì)
關(guān)于我們 詳情
華清遠(yuǎn)見(jiàn)教育集團(tuán),總部位于北京中關(guān)村,創(chuàng)辦于2004年,是一家集產(chǎn)學(xué)研于一體的高端IT職業(yè)教育品牌。19年來(lái),華清遠(yuǎn)見(jiàn)始終堅(jiān)持“技術(shù)創(chuàng)新引領(lǐng)教育發(fā)展”的企業(yè)發(fā)展理念,堅(jiān)持“做良心教育,做專(zhuān)業(yè)教育,做受人尊敬的職業(yè)教育”的核心育人理念。目前,集團(tuán)業(yè)務(wù)包括面授課程、在線(xiàn)課程、智能教儀產(chǎn)品研發(fā)3大方向。其中,面授課程涵蓋高薪就業(yè)、師資培訓(xùn)和企業(yè)內(nèi)訓(xùn)3大課程方向。從線(xiàn)下到線(xiàn)上,從教學(xué)到研發(fā),華清遠(yuǎn)見(jiàn)業(yè)務(wù)全面覆蓋不同客戶(hù)群體的需求。并先后在北京、上海、深圳、成都、南京、武漢、西安、廣州、沈陽(yáng)、重慶、濟(jì)南、長(zhǎng)沙成立12個(gè)直營(yíng)中心。成立19年,改變了27余萬(wàn)學(xué)子的命運(yùn),幫助他們實(shí)現(xiàn)了夢(mèng)想,這是華清遠(yuǎn)見(jiàn)企業(yè)價(jià)值的實(shí)現(xiàn),更是我們 每一個(gè)華清人社會(huì)價(jià)值的實(shí)現(xiàn)。