驅(qū)動(dòng)開(kāi)發(fā)是整個(gè)嵌入式軟件開(kāi)發(fā)中技術(shù)含量最高、難度最大,同時(shí)也是薪資最高、工作機(jī)會(huì)最少的一塊,處在整個(gè)嵌入式軟件開(kāi)發(fā)的食物鏈上游。通過(guò)前面4部分課程的學(xué)習(xí),大家已經(jīng)掌握了比較好的基礎(chǔ),因此本課程能夠有機(jī)會(huì)帶大家更深入的去解析linux的內(nèi)核驅(qū)動(dòng)機(jī)制,譬如platform總線(xiàn)、I2C、input子系統(tǒng)、framebuffer子系統(tǒng),驅(qū)動(dòng)的分離與分層原則,三種驅(qū)動(dòng)模型(字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)設(shè)備)等等。這些內(nèi)容再加上具體硬件的操作特性其實(shí)就是驅(qū)動(dòng)開(kāi)發(fā)的主體了,因此對(duì)這些內(nèi)容的掌握其實(shí)就意味著你已經(jīng)入門(mén)驅(qū)動(dòng)開(kāi)發(fā)了,至少可以大方的在自己的求職簡(jiǎn)歷上寫(xiě)上“熟悉linux下常見(jiàn)驅(qū)動(dòng)的調(diào)試開(kāi)發(fā)”。
《Linux驅(qū)動(dòng)開(kāi)發(fā)》總計(jì)11個(gè)課程(112節(jié)、60小時(shí)),是《朱有鵬老師嵌入式linux核心課程》的第5部分,也是最后一部分了。
主講內(nèi)容:
本課程是linux驅(qū)動(dòng)開(kāi)發(fā)的第5個(gè)課程,主要內(nèi)容是linux的設(shè)備驅(qū)動(dòng)模型,包括總線(xiàn)、類(lèi)、設(shè)備、驅(qū)動(dòng)等概念,重點(diǎn)通過(guò)platform平臺(tái)總線(xiàn)的工作來(lái)演示設(shè)備驅(qū)動(dòng)模型的工作方法,實(shí)踐環(huán)節(jié)對(duì)上個(gè)課程的LED驅(qū)動(dòng)進(jìn)行平臺(tái)總線(xiàn)式改造,最終目標(biāo)是讓大家徹底掌握l(shuí)inux的總線(xiàn)式設(shè)備驅(qū)動(dòng)模型。
適用人群:
本課程是linux驅(qū)動(dòng)開(kāi)發(fā)的第5個(gè)課程,要求學(xué)過(guò)前面的課程,尤其是C語(yǔ)言高級(jí)專(zhuān)題及驅(qū)動(dòng)基礎(chǔ)等課程,有一定編程能力,對(duì)linux內(nèi)核驅(qū)動(dòng)有一定掌握才能學(xué)習(xí)。
通過(guò)本課程學(xué)習(xí),你將學(xué)會(huì):
-
linux的設(shè)備驅(qū)動(dòng)模型
-
platform平臺(tái)總線(xiàn)的目的、意義、工作方式
-
平臺(tái)總線(xiàn)的工作流程
-
如何在平臺(tái)總線(xiàn)下編寫(xiě)驅(qū)動(dòng)程序
-
實(shí)戰(zhàn)編寫(xiě)X210下基于平臺(tái)總線(xiàn)的LED驅(qū)動(dòng)
-
硬件配置信息中的數(shù)據(jù)如何從device端傳遞到driver端,并且被driver接收用于硬件的操作方法