學(xué)習(xí)嵌入式的建議:嵌入式怎么入門和提高?
嵌入式軟件的話不一定需要學(xué)很多硬件知識的(有的話當(dāng)然是多多益善)。會用一些燒寫工具,編譯,調(diào)試工具(比如JTAG)就可以了,到時候要用了現(xiàn)學(xué)。開發(fā)工具也沒什么固定的,一般也不一定要IDE,用文本編輯器就可以寫代碼(比如Vim,Emacs, nano, Sublime)了
編譯一般用GCC的變種。嵌入式一般要學(xué)C語言(去看看我的C語言探索之旅, 以及C語言深度解剖,C程序設(shè)計語言這兩本書。也可以繼續(xù)深入看C語言專家編程等等)。
C++不一定會用到, 但也可以學(xué)一下。Linux是要學(xué)習(xí)的。因為交叉編譯經(jīng)常要用到Linux系統(tǒng),即使在Windows下也要用到Cygwin這類的。最好花點時間學(xué)一下匯編,對理解計算機(jī)的原理,特別是內(nèi)存,指針,二進(jìn)制,十六進(jìn)制都有很好幫助,不需要學(xué)很深。
嵌入式目前主流的處理器架構(gòu)是ARM(以前是ARM7,ARM9,ARM11,現(xiàn)在都Cortex系列了)。手機(jī),平板,大部分開發(fā)板都是ARM的天下。所以需要學(xué)一下ARM架構(gòu),有個了解。一開始對ARM不需要太深入,視以后情況而定。ARM的集成開發(fā)環(huán)境有ADS(ARM Developer Suite), 是ARM處理器下主要的開發(fā)工具。
可以去買一塊便宜的開發(fā)板來開始學(xué)習(xí)(我覺得自學(xué)嵌入式唯一比較花錢之處。也就幾百元就很好了),現(xiàn)在什么樹莓派有點貴,Arduino什么也可以。也可以買國內(nèi)一些廠商自己的開發(fā)板,不要買太差的就行。如果你買了開發(fā)板的話,可以去開發(fā)板對應(yīng)的論壇。
把英語學(xué)好,對編程很有裨益。所以千萬不要荒廢英語。還有, 數(shù)學(xué)也需要還過得去吧, 畢竟底層有很多位移, 與或非運(yùn)算, 十六進(jìn)制, 二進(jìn)制, 十進(jìn)制轉(zhuǎn)換, 等等??梢钥吹臅芏啵饕x好書,看得有效率。
最好買紙質(zhì)版的, 當(dāng)然我當(dāng)年自學(xué)時, 因為是在法國, 買國內(nèi)的書不方便, 因此都是看的PDF。
深入理解計算機(jī)系統(tǒng)非常好,算是入門的。其他也有很多嵌入式書籍。慢慢來,先把基礎(chǔ)打好了。嵌入式這個領(lǐng)域太廣了,可以學(xué)的東西太多,現(xiàn)在技術(shù)又日新月異,把基礎(chǔ)打好學(xué)什么新知識都快。
假如你以后學(xué)更有難度的嵌入式實時(Real Time)系統(tǒng)(VxWorks,ecos,ucos,等等。驅(qū)動開發(fā)之類的,那就要C(和匯編)的功底比較強(qiáng),要看更深入的書。不過暫時先入門嵌入式,這些更艱深的領(lǐng)域看興趣,不學(xué)也可以。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。