版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
【W(wǎng)ord版本下載可任意編輯】嵌入式Linux學(xué)習(xí)方法適合初學(xué)者設(shè)計(jì)學(xué)習(xí)計(jì)劃俗話(huà)說(shuō)萬(wàn)事開(kāi)頭難,剛開(kāi)始的時(shí)候,你是否根本就不知如何開(kāi)始,上網(wǎng)查資料被一堆堆新名詞搞的找不到北,去圖書(shū)館看書(shū)也是找不到方向?又是arm,又是linux,又是uboot頭都大了。不知道自己終究從哪里開(kāi)始?
下面就跟著我學(xué)習(xí)設(shè)計(jì)嵌入式工程師的修煉日記吧!
簡(jiǎn)單說(shuō),從arm根底知識(shí)到裸機(jī)編程,從uCOSII到linux,從linux根底的命令到shell編程,從u-boot到文件系統(tǒng),到現(xiàn)在的linux驅(qū)動(dòng)程序。從簡(jiǎn)單到復(fù)雜,從根底到基本是按照這個(gè)來(lái)的。
階段:嵌入式硬件根底以及裸機(jī)程序開(kāi)發(fā)
1.知識(shí)點(diǎn):
(1)arm處理器根底知識(shí),工作模式,存放器,中斷與異常,尋址方式,匯編指令集
(2)熟悉ADS集成開(kāi)發(fā)環(huán)境為裸機(jī)程序開(kāi)發(fā)做準(zhǔn)備
(3)裸機(jī)程序開(kāi)發(fā):LED,串口,LCD,觸摸屏,NANDFLASH,IIC,IIS,DMA等
2.過(guò)程以及目的:
這一階段的學(xué)習(xí)主要是熟悉嵌入式的硬件,為以后的linux驅(qū)動(dòng)打根底。因?yàn)榍度胧街鞔蛱幚砥骷軜?gòu)就是arm,所以針對(duì)arm來(lái)學(xué)習(xí)。首先學(xué)習(xí)根底知識(shí),然后通過(guò)在開(kāi)發(fā)板上的練習(xí)來(lái)掌握。這一階段所用的資料主要有:
(1)《ARM嵌入式根底教程》這本書(shū)主要看arm根底的知識(shí)。這本書(shū)是講arm7的,但是arm的根底的指令集以及模型是一樣的。
(2)《嵌入式linux應(yīng)用開(kāi)發(fā)完全手冊(cè)》這本書(shū)主要看介紹s3c2410接口模塊的部分,實(shí)驗(yàn)裸機(jī)的時(shí)候需要硬件的知識(shí)。
3.所用時(shí)間:大約兩個(gè)月。
第二階段:linux根底以及shell編程
1.知識(shí)點(diǎn)
(1)linux根底知識(shí)
(2)linux安裝與使用
(3)linux常用命令
(4)vi使用
(5)簡(jiǎn)單shell編程
2.過(guò)程以及目的:
這一階段的學(xué)習(xí)主要是熟悉linux,會(huì)安裝linux,了解Linux的根底知識(shí),會(huì)簡(jiǎn)單的操作。剛開(kāi)始安裝linux還是在虛擬機(jī)上安裝比較好,安裝開(kāi)發(fā)板推薦的Fedora9,按照開(kāi)發(fā)板配套的說(shuō)明一步一步的安裝,然后在上面練習(xí)各種命令。這一階段主要要看《鳥(niǎo)哥的linux私房菜根底學(xué)習(xí)篇》,這個(gè)書(shū)有電子版,也不用全看,主要是看前面對(duì)Linux根底知識(shí)的描述,以及基本的命令。命令只是了解,那么多記也記不下來(lái),以后用時(shí)的再查閱。這一階段主要目的是對(duì)linux有一個(gè)整體的了解,起碼要知道根底的一些概念,還有會(huì)一些基本的操作。
3.時(shí)間:大約一個(gè)月
第三階段:linux應(yīng)用程序根底開(kāi)發(fā)
1.知識(shí)點(diǎn):
(1)GCC,GDB,Make根底
(2)文件,時(shí)間編程
(3)多進(jìn)程,多線(xiàn)程程序設(shè)計(jì)
(4)進(jìn)程間通信
2.過(guò)程以及目的:
這一階段的學(xué)習(xí)主要是了解linux應(yīng)用程序的編寫(xiě)調(diào)試,也都是根底知識(shí),主要目的還是熟悉Linux。熟悉其中應(yīng)用程序有關(guān)的一些概念,為以后打根底。這一階段主要看了《嵌入式Linux應(yīng)用程序開(kāi)發(fā)標(biāo)準(zhǔn)教程》,這本書(shū)對(duì)linux上應(yīng)用程序編寫(xiě)講的很詳細(xì),而且不是很難,那本經(jīng)典的《UNIX環(huán)境編程》講的比較深入,剛開(kāi)始看有點(diǎn)難,萬(wàn)事開(kāi)頭難還是從簡(jiǎn)單的開(kāi)始。學(xué)習(xí)應(yīng)用編程以后也不一定搞應(yīng)用,從事嵌入式linux行業(yè)的人,這是必須的基本技能。
3.時(shí)間:大約一個(gè)月
第四階段:uCOSII操作系統(tǒng)學(xué)習(xí)
1.知識(shí)點(diǎn):
(1)嵌入式實(shí)時(shí)操作系統(tǒng)的概念以及根底知識(shí)
(2)uCOSII操作系統(tǒng)源代碼閱讀
(3)移植uCOSII
(4)uCOSII操作系統(tǒng)應(yīng)用編程
2.過(guò)程以及目的:
這一階段的學(xué)習(xí)主要是了解嵌入式實(shí)時(shí)操作系統(tǒng)的根底,因?yàn)閡COSII是開(kāi)源的,可以研究他的代碼。對(duì)操作系統(tǒng)的任務(wù)調(diào)度以及資源管理有直觀的認(rèn)識(shí)。并且閱讀他的源碼能夠提高自己的編程能力與雖說(shuō)友規(guī)范自己的編程習(xí)慣。善之臂提供了uCOSII的移植版本。但是自己實(shí)際移植能夠有更深刻的認(rèn)識(shí)。這個(gè)操作系統(tǒng)比較簡(jiǎn)單,所以應(yīng)用程序的編寫(xiě)就很重要,在上面實(shí)現(xiàn)幾個(gè)功能還是有助于對(duì)系統(tǒng)的理解。這一階段主要看的就是紹貝貝翻譯的uCOSII作者所著的《嵌入式實(shí)時(shí)操作系統(tǒng)uCOS-II》,里面對(duì)操作系統(tǒng)的源碼有這詳細(xì)的分析。看透這本書(shū)后就會(huì)對(duì)uCOSII有一個(gè)深入的了解。這一階段的主要目的是了解操作系統(tǒng)的知識(shí),比方任務(wù)調(diào)度,并發(fā)與競(jìng)態(tài)。還有一個(gè)目的就是鍛煉自己的編程能力。因?yàn)槿绻唇榻B操作系統(tǒng)原理的書(shū)會(huì)比較枯燥,我感覺(jué)閱讀一個(gè)操作系統(tǒng)的源碼比看一千本介紹原理的書(shū)來(lái)的實(shí)惠的多。
3.時(shí)間:大約一個(gè)月
第五階段:bootloader學(xué)習(xí)
1.知識(shí)點(diǎn):
(1)bootloader根底知識(shí)
(2)u-boot根底與命令
(3)u-boot移植
2.過(guò)程以及目的:
bootloader是一個(gè)linux嵌入式系統(tǒng)的不可缺少的部分。這一階段的學(xué)習(xí)主要是了解bootloader的作用,以及通用bootloaderu-boot的知識(shí),剛開(kāi)始學(xué)會(huì)用u-boot的各種命令。然后分析u-boot的啟動(dòng)流程和Makefile以及u-boot加載內(nèi)核過(guò)程。然后按照別人的步驟一步一步的移植內(nèi)核,多做幾編以熟悉這個(gè)過(guò)程。然后在熟悉整個(gè)u-boot的根底上,單獨(dú)完成u-boot的移植,并添加自己修改。這一階段主要參考資料就是光盤(pán)自帶的u-boot移植參考手冊(cè)和一些網(wǎng)絡(luò)上的文章。個(gè)人感覺(jué)u-boot移植這方面的網(wǎng)絡(luò)資源相當(dāng)?shù)呢S富。
3.時(shí)間:大約一個(gè)月
第六階段:文件系統(tǒng)學(xué)習(xí)
1.知識(shí)點(diǎn):
(1)linux文件系統(tǒng)的種類(lèi)與作用
(2)熟悉busybox的使用,以及l(fā)inux系統(tǒng)啟動(dòng)過(guò)程
(3)構(gòu)建自己的根文件系統(tǒng)
2.過(guò)程以及目的:
文件系統(tǒng)也是一個(gè)linux嵌入式系統(tǒng)不可缺少的部分,這一階段的學(xué)習(xí)主要是熟悉根文件系統(tǒng)的作用以及根底知識(shí)。并且自己構(gòu)建自己的根文件系統(tǒng)。這一階段所看的書(shū)有《構(gòu)建嵌入式linux系統(tǒng)》,這本書(shū)詳細(xì)講解了嵌入式linux的所有元素,包括文件系統(tǒng).這里主要看文件系統(tǒng)這塊。我還參考了網(wǎng)上的一些文章。這里首先要熟悉基本的一些Linux文件系統(tǒng),然后學(xué)習(xí)busybox的使用以及l(fā)inux的啟動(dòng)過(guò)程,參考別人的一步一步來(lái)構(gòu)建自己的文件系統(tǒng)。
3.時(shí)間:大約半個(gè)月
第七階段:嵌入式圖形界面GUI
1.知識(shí)點(diǎn):
(1)嵌入式圖形界面GUI的種類(lèi)與特點(diǎn)
(2)minigui根底知識(shí)
(3)minigui移植與程序編寫(xiě)
2.過(guò)程以及目的:
嵌入式圖形界面GUI作為嵌入式上層系統(tǒng)的東西也是需要了解的,這里我只學(xué)習(xí)了minigui,因?yàn)镼T是需要C++的知識(shí),而我沒(méi)有學(xué)過(guò)C++.所以只看了minigui的相關(guān)知識(shí)。這個(gè)階段的目的主要是熟悉一下嵌入式圖形接界面的開(kāi)發(fā)流程,因?yàn)橐院笠膊淮蛩愀銘?yīng)用。只是熟悉一下嵌入式組成的一些方面。這里只要將minigui移植到板子上能跑hello程序就可以了。其他的也不用深入了解。通過(guò)移植minigui對(duì)linux上運(yùn)行的軟件以及函數(shù)庫(kù),程序運(yùn)行原理,編譯器都會(huì)有一個(gè)新的認(rèn)識(shí)。
3時(shí)間:大約半個(gè)月
第八階段:linux驅(qū)動(dòng)程序根底知識(shí)
1.知識(shí)點(diǎn):
(1)看完《LINUX設(shè)備驅(qū)動(dòng)程序》除了網(wǎng)絡(luò)驅(qū)動(dòng)程序,tty驅(qū)動(dòng)程序,塊驅(qū)動(dòng)程序這幾章不看,其他的都要看完。
(2)實(shí)驗(yàn)書(shū)中所有例程,要仔細(xì)分析結(jié)果,理解相關(guān)知識(shí)點(diǎn)。
(3)就算是例子,程序編程習(xí)慣一定要統(tǒng)一,文檔一定要規(guī)范。
2.過(guò)程以及目的
這一階段的目的就是為了linux驅(qū)動(dòng)打根底,《LINUX設(shè)備驅(qū)動(dòng)程序》(第三版)也就是大家所說(shuō)的ldd3,是經(jīng)典的一本講linux驅(qū)動(dòng)的書(shū),一定要看而且多看幾遍。次看很難看進(jìn)去,感覺(jué)講的晦澀難懂。但是多看幾遍就會(huì)由豁然開(kāi)朗的感覺(jué)。看完了書(shū),然后就是實(shí)驗(yàn)書(shū)中的例子。
3.時(shí)間:大約兩個(gè)月
第九階段:linux驅(qū)動(dòng)實(shí)戰(zhàn)
1.知識(shí)點(diǎn):
(1)通過(guò)led驅(qū)動(dòng)理解雜項(xiàng)字符設(shè)備的注冊(cè)與實(shí)現(xiàn),并掌握MINI2440的IO操作過(guò)程。
(2)通過(guò)button驅(qū)動(dòng)程序掌握基本的中斷實(shí)現(xiàn)方法。
(3)掌握PWM驅(qū)動(dòng)程序。
(4)通過(guò)觸摸屏驅(qū)動(dòng)程序掌握input設(shè)備模型的實(shí)現(xiàn)。
(5)掌握ADC驅(qū)動(dòng)程序的設(shè)計(jì)
(6)掌握看門(mén)狗,rtc驅(qū)動(dòng)程序的設(shè)計(jì)
(7)通過(guò)LCD驅(qū)動(dòng)程序分析platform設(shè)備模型的實(shí)現(xiàn)。
2.過(guò)程以及目的:
這一階段的學(xué)習(xí)主要是掌握實(shí)際的簡(jiǎn)單的驅(qū)動(dòng)程序的實(shí)現(xiàn)與ldd3中的差異,并且分析一些linux子系統(tǒng)。通過(guò)這一階段的學(xué)習(xí),能夠?qū)inux驅(qū)動(dòng)程序有更深入的認(rèn)識(shí)。并且鍛煉自己閱讀海量代碼的能力。這一階段主要工作就是看代碼,實(shí)驗(yàn),看代碼,實(shí)驗(yàn),通過(guò)現(xiàn)象學(xué)習(xí)知識(shí)。
3.時(shí)間:大約一個(gè)月
第十階段:深入理解linux內(nèi)核與USB子系統(tǒng)的研究
前九個(gè)階段完成了,自己感覺(jué)嵌入式Linux應(yīng)該應(yīng)該算是入門(mén)了。所以要開(kāi)始計(jì)劃第十個(gè)階段了。這一階段基本上要確定自己未來(lái)的發(fā)展方向了。因?yàn)楝F(xiàn)在嵌入式系統(tǒng)的標(biāo)準(zhǔn)接口都有USB,所以學(xué)會(huì)USB的相關(guān)知識(shí)是很有競(jìng)爭(zhēng)力的。搞驅(qū)動(dòng)的人對(duì)內(nèi)核
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度民間借貸論文文獻(xiàn)綜述與綜述寫(xiě)作合同
- 2025年度配套服務(wù)用房租賃合同解除協(xié)議
- 二零二五年度木板行業(yè)人才培養(yǎng)與技術(shù)交流合同
- 二零二五年度木門(mén)產(chǎn)品線(xiàn)上線(xiàn)下?tīng)I(yíng)銷(xiāo)推廣合同范本
- 2025年度冷鏈運(yùn)輸車(chē)輛租賃及運(yùn)輸服務(wù)合同3篇
- 二零二五年度合伙經(jīng)營(yíng)圖書(shū)書(shū)店合同書(shū)模板2篇
- 2025年建筑用磚采購(gòu)與質(zhì)量控制管理合同3篇
- 二零二五年度排水溝施工工程進(jìn)度款支付及結(jié)算合同
- 課題申報(bào)參考:農(nóng)村父母養(yǎng)育倦怠所致兒童手游依賴(lài)之危害及其矯正機(jī)制研究
- 二零二五版耐火材料行業(yè)環(huán)保設(shè)施建設(shè)合同4篇
- 電纜擠塑操作手冊(cè)
- 浙江寧波鄞州區(qū)市級(jí)名校2025屆中考生物全真模擬試卷含解析
- 2024-2025學(xué)年廣東省深圳市南山區(qū)監(jiān)測(cè)數(shù)學(xué)三年級(jí)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- IATF16949基礎(chǔ)知識(shí)培訓(xùn)教材
- 【MOOC】大學(xué)生創(chuàng)新創(chuàng)業(yè)知能訓(xùn)練與指導(dǎo)-西北農(nóng)林科技大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 勞務(wù)派遣公司員工考核方案
- 基礎(chǔ)生態(tài)學(xué)-7種內(nèi)種間關(guān)系
- 2024年光伏農(nóng)田出租合同范本
- 《阻燃材料與技術(shù)》課件 第3講 阻燃基本理論
- 2024-2030年中國(guó)黃鱔市市場(chǎng)供需現(xiàn)狀與營(yíng)銷(xiāo)渠道分析報(bào)告
- 新人教版九年級(jí)化學(xué)第三單元復(fù)習(xí)課件
評(píng)論
0/150
提交評(píng)論