如何看懂uboot源碼 如何學(xué)習(xí)嵌入式?
如何學(xué)習(xí)嵌入式?我來(lái)發(fā)表文章下我的觀點(diǎn)。說(shuō)下我的方法,更適合在校大學(xué)生,大家有什么見解希望能糾正討論。為什么不說(shuō)比較適合在校大學(xué)生呢,只不過(guò)在校大學(xué)生時(shí)間充裕。而參加過(guò)工作的人,時(shí)間就是金錢,還不如最
如何學(xué)習(xí)嵌入式?
我來(lái)發(fā)表文章下我的觀點(diǎn)。說(shuō)下我的方法,更適合在校大學(xué)生,大家有什么見解希望能糾正討論。
為什么不說(shuō)比較適合在校大學(xué)生呢,只不過(guò)在校大學(xué)生時(shí)間充裕。而參加過(guò)工作的人,時(shí)間就是金錢,還不如最少太長(zhǎng)時(shí)間如何自學(xué),還不妨報(bào)個(gè)培訓(xùn)班速成,但培訓(xùn)班的缺點(diǎn)很有可能那就是基礎(chǔ)不牢(這個(gè)是個(gè)人見解,如有有所不同意見也也可以去看看我寫的自學(xué)經(jīng)歷,依據(jù)什么自己的基礎(chǔ)進(jìn)不了相應(yīng)的步驟即可)。
我以為學(xué)習(xí)任何東西也是是需要分模塊的。各個(gè)模塊熟悉了之后串站了起來(lái)(個(gè)人經(jīng)驗(yàn))
叮囑??!
提醒?。?/p>
叮囑?。?/p>
玩嵌入式是有點(diǎn)兒費(fèi)錢的。不過(guò)得之吾幸,這個(gè)看你們自己把握了。
下面我說(shuō)下我的方法
一、嵌入式兩類幾個(gè)模塊(給自己學(xué)的勇氣)
二、手動(dòng)檔學(xué)什么(打基礎(chǔ))
三、五階學(xué)什么(給自己堅(jiān)持下去的動(dòng)力)
一、嵌入式分幾個(gè)模塊
嵌入式兩類軟件、硬件(簡(jiǎn)單吧)。軟件,其實(shí)可以分的更詳細(xì)點(diǎn),不過(guò)我們不必須分這么大具體點(diǎn),后面自學(xué)的過(guò)程中你就明白了。
二、平路學(xué)什么
必須,你好是是計(jì)算機(jī)、電子、電氣、微電子、電子信息、通信、自動(dòng)化、信息工程等查找專業(yè)。
肯定什么人會(huì)問我想知道為什么可以這些專業(yè)。而且這些專業(yè)或則編程能力強(qiáng),要嘛硬件基礎(chǔ)很認(rèn)識(shí),學(xué)習(xí)嵌入式是純天然的優(yōu)勢(shì)。比如說(shuō)自動(dòng)化專業(yè),他們自學(xué)過(guò)電路,模電,數(shù)電,電力電子這些課能讓你們有牢實(shí)的硬件基礎(chǔ);另外C,51單片機(jī),微機(jī)讓你們有當(dāng)然的軟件基礎(chǔ)。特別是51單片機(jī),那樣一來(lái)能學(xué)會(huì)了,后面學(xué)習(xí)嵌入式會(huì)更很難。
接下來(lái)細(xì)細(xì)的看講講要如何起步后(基礎(chǔ)不勞,地動(dòng)山搖)
最先,你要明白硬件的基本知識(shí),這些硬件知識(shí)能幫你更好的理解51單片機(jī)的內(nèi)部原理,硬件的管腳配置,引腳功能,更重要的是的是幫你理解放大電路,濾波電路等。(第七步我推薦一本我其實(shí)比價(jià)好的麻煩問下51的書,里面有51的內(nèi)部原理)這些懂了,在用51C語(yǔ)言寫程序的時(shí)候可能會(huì)才發(fā)現(xiàn)so easy。當(dāng)然了為啥先學(xué)51呢,只不過(guò)大學(xué)大部分那就開辦51的課,再者51容易理解,教學(xué)視頻十分豐富。
第二步,你要懂C/C,c語(yǔ)言是學(xué)習(xí)嵌入式的靈魂。而且大學(xué)都開設(shè)有C課程,所以才大家從C又開始能學(xué)會(huì)低些方便和節(jié)約時(shí)間。
第十步,有了去相關(guān)基礎(chǔ)后結(jié)束看51單片機(jī)系列的書(見下圖),網(wǎng)上各種各樣的視頻多的很,對(duì)著網(wǎng)絡(luò)上的視頻學(xué)習(xí),效果會(huì)更好。但沒法只學(xué)不練,買個(gè)開發(fā)板(當(dāng)初我們是自己焊的),自己對(duì)著視頻練習(xí)。理論和實(shí)際中生克制化效果最好就是。
肯定需要都用到你所選的燒錄軟件,和編程軟件。我在這里統(tǒng)一說(shuō)下。
燒錄軟件就用STC-ISP(好用),編程的用KEILc51(keil3也能用),后面玩32了再用KEIL5。
三、進(jìn)階學(xué)什么
不過(guò)在此之前、51單片機(jī)玩差不多半個(gè)學(xué)期就行啦,半個(gè)學(xué)期夠你掌握了,太長(zhǎng)浪費(fèi)時(shí)間。我們?cè)缇屯孢^(guò)51了,已經(jīng)是大孩子了,哈!哈!哈!。但是我們沒有玩過(guò)32位的,再上arm是不行啊的。
所以我我們要就開始學(xué)32,其實(shí)32比51簡(jiǎn)單的多,只不過(guò)他們有相當(dāng)豐富的庫(kù),各種庫(kù)。市面上的教學(xué)資源太非常的相當(dāng)豐富,產(chǎn)品也都很成熟,某寶上面各種開發(fā)板(價(jià)格300以內(nèi)),自己選一個(gè)買就行了。
其實(shí)你也是可以到后面51學(xué)32,雖說(shuō)51太老了,太略顯陳舊了,但我覺著你學(xué)習(xí)51會(huì)幫你牢固知識(shí),幫你連成寫程序的習(xí)慣等。
學(xué)32的周期,根據(jù)自己情況安排好了,就像一個(gè)到一個(gè)半學(xué)期。
第二步、現(xiàn)在咱們對(duì)32比較好所了解了,輪到自學(xué)嵌入式系統(tǒng)了,對(duì),嗯就是系統(tǒng),會(huì)不會(huì)很激動(dòng)。。
想自學(xué)嵌入式系統(tǒng)Linux/WIN等,簡(jiǎn)單你不需要買個(gè)arm學(xué)版,在淘寶上面買的話,不太貴S3C2440,500元。資料非常多,我建議你買arm9,是因?yàn)閞am11的資料太少,不尤其適合沒基礎(chǔ)?;騽t你們預(yù)算太能量供應(yīng),可以判斷Cortex-A8/A9的開發(fā)板。
我完全相信你們能學(xué)這里早就有了自己的想法和見解了。到這個(gè)過(guò)程的時(shí)候,知乎上的大佬回答我的很具體點(diǎn)和網(wǎng)上的資源也相當(dāng)相當(dāng)豐富,多看看大家寫的約定學(xué)習(xí)。
后來(lái),做下系統(tǒng)的總結(jié)
看的懂電路圖、沒看明白芯片手冊(cè)(更牛皮的要求是會(huì)自己繪制PCB板,會(huì)器件選型,會(huì)自己調(diào)試自己怎么設(shè)計(jì)板子,轉(zhuǎn)眼是可以可以量產(chǎn))
有匯編語(yǔ)言,移植驅(qū)動(dòng)的能力
懂內(nèi)核的實(shí)現(xiàn)機(jī)制
懂C語(yǔ)言,C等
下面列有詳細(xì)的要求,你們自己十足把握下。
等待想找工作的時(shí)候,有嵌入式硬件,嵌入式軟件,嵌入式等,甚至也可以融匯貫通,要看你們的學(xué)習(xí)水平了,哈!哈!哈!。
嵌入式硬件要求:
1、熟練在用Allegro Cadence等EDA工具參與硬件原理圖及PCB的設(shè)計(jì),精通滿PCB布線流程、擁有多層板布線經(jīng)驗(yàn)規(guī)范及信號(hào)完整性結(jié)論,熟得不能再熟至多一種高速公路通信接口,如PCIE、SRIO、10GBE等。
2、精通滿嵌入式處理器設(shè)計(jì),具高大型手機(jī)CPU或則DSP的板級(jí)硬件設(shè)計(jì)調(diào)試經(jīng)驗(yàn),的或P系列或則T系列PowerPC,C6678、C6655等DSP,包括FPGA設(shè)計(jì)經(jīng)驗(yàn)者等。
3、共同負(fù)責(zé)硬件產(chǎn)品的需求調(diào)研、方案設(shè)計(jì),非常熟練可以使用門類豐富電子儀器儀表并且測(cè)試。
。。。。。。
嵌入式軟件要求:
1、熟得不能再熟Linux操作系統(tǒng)內(nèi)核,有Linux內(nèi)核和驅(qū)動(dòng)開發(fā)經(jīng)驗(yàn)。
2、全精通C/C開發(fā)語(yǔ)言,shell腳本。
3、精通滿C語(yǔ)言,能的的c語(yǔ)言程序、調(diào)試硬件驅(qū)動(dòng)程序和功能程序。
4、熟得不能再熟多線程的開發(fā),精通于ucosII嵌入式系統(tǒng)移植、驅(qū)動(dòng)和應(yīng)用開發(fā)。
。。。。。。
嵌入式硬件的工作:
嵌入式軟件的工作:
嵌入式的工作:
那你可以不以“低端單片機(jī)-高端單片機(jī)-算中端ARM-比較高端ARM”來(lái)學(xué)。我現(xiàn)在那就是工作中用STM32,晚上回來(lái)了在家自學(xué)ARM9。
我想學(xué)習(xí)嵌入式系統(tǒng),都需要些什么基礎(chǔ)?
現(xiàn)在互聯(lián)網(wǎng)IT發(fā)展的很快,嵌入式系統(tǒng)無(wú)疑是當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。所以才很多人都想學(xué)習(xí)嵌入式開發(fā),為大家講解學(xué)嵌入式開發(fā)需打聽一下的一些基礎(chǔ)知識(shí)。
1.所了解C語(yǔ)言基礎(chǔ)知識(shí)。C語(yǔ)言是一門基礎(chǔ)語(yǔ)言,即便對(duì)嵌入式軟件肯定硬件開發(fā)編程,都是很重要的是的作用。
2.清楚操作系統(tǒng)。對(duì)操作系統(tǒng)有所所了解也很不重要,比如進(jìn)程、線程,系統(tǒng)是怎莫先分配資源的,怎么管理方面硬件的等等,這些都能解決你對(duì)硬件和軟件有個(gè)很好的理解。
3.所了解Linux的或wince下的編程。
4.本身單機(jī)片也可以ARM或者M(jìn)IPS等查找基礎(chǔ)。
5.其他知識(shí)的擴(kuò)充。我們還也可以通過(guò)閱讀一些優(yōu)秀的代碼,清楚UBOOT的源代碼,也可以是怎么學(xué)習(xí)下linux的源代碼等等。反正嵌入式也可以不零基礎(chǔ)怎么學(xué)習(xí)的,因?yàn)橹灰阒灰眯脑趺磳W(xué)習(xí)是可以掌握嵌入式開發(fā)這門技術(shù)的。