當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 行業(yè)百科 > arm開發(fā)到底如何去學(xué)?
對于arm開發(fā)來說其實很多初學(xué)者會遇到很多的問題,比如說arm到底指的是什么?arm的處理器芯片應(yīng)該如何來分類?當(dāng)前應(yīng)用比較多的arm處理器芯片究竟有哪些?等等。對于初學(xué)者來說有一些問題是一定要注意的,因為在猶豫的時候可能就會選擇錯的思路。一起來看看arm開發(fā)該如何去學(xué)。
初學(xué)者必須要一開始就掌握arm開發(fā)體系結(jié)構(gòu)域匯編指令嗎?
在我們身邊的很多ARM初學(xué)者,剛開始就抱著很多有關(guān)ARM體系結(jié)構(gòu)的書籍開始苦讀,更有很多初學(xué)者,在很多具體內(nèi)容上總是鉆牛角尖,花費了大量時間在ARM匯編指令上,雖然對一些ARM的相關(guān)概念會比較了解,但與真正的具體應(yīng)用還是相差很遠,有很多初學(xué)者有這樣的體會,在學(xué)完ARM體系結(jié)構(gòu)之后,對ARM的應(yīng)用還是無從下手,也正因為這個原因,很多人就放棄了ARM嵌入式開發(fā)的學(xué)習(xí)。
當(dāng)然也不是不主張看ARM體系結(jié)構(gòu)的相關(guān)書籍,但關(guān)鍵在于怎么看、看到什么程度,根據(jù)相關(guān)經(jīng)驗來看,ARM初學(xué)者對于ARM體系結(jié)構(gòu)的相關(guān)知識只需要做到了解程度就可以了,對于ARM的匯編可以完全不用記憶,只需要看懂就可以,隨著初學(xué)者對ARM更深入地學(xué)習(xí),有關(guān)ARM體系結(jié)構(gòu)與匯編指令的知識以后可能會反復(fù)出現(xiàn),遇到時可以再通過有針對性的看重點內(nèi)容及相關(guān)知識點,相信會取得比較好的效果。
對于初學(xué)者來說是需要選擇適合arm的軟件集成開發(fā)環(huán)境
目前,流行的ARM軟件集成開發(fā)環(huán)境有ADS1.2、Keil uV3和IAR等。對于51單片機應(yīng)用開發(fā)工程師來說,Keil開發(fā)環(huán)境應(yīng)該應(yīng)用得比較熟練,若采用Keil uV3進行ARM軟件開發(fā),應(yīng)該可以快速上手。但對于初學(xué)者來講,并不建議選擇Keil uV3進行ARM軟件開發(fā),對于初學(xué)者應(yīng)該明白和了解其原因:1、Keil uV3是第三方ARM軟件集成開發(fā)環(huán)境,目前支持的ARM芯片種類還不多,所帶的編譯器也并不完善;2、由于Keil uV3為了方便用戶的開發(fā),提供了現(xiàn)成的ARM啟動文件,換句話說,它屏蔽了ARM開發(fā)中的一個重要內(nèi)容——啟動代碼的編寫,而這一點對初學(xué)者來說應(yīng)該是非常重要的內(nèi)容。
初學(xué)者拿到開發(fā)板之后不要盲目的進行實驗
對于ARM初學(xué)者來講,在拿到開發(fā)板之后,由于其好奇心恨不得一口氣就把所有的實驗做完,對于這樣的做法我們是堅決的反對,對于很多初學(xué)者來講,沒有一個明確的目標,可能很多實驗都是做不出結(jié)果的,甚至?xí)䲟p壞開發(fā)板。
學(xué)ARM必需懂得嵌入式操作系統(tǒng)
很多ARM初學(xué)者有一個錯誤的概念——學(xué)ARM必搞嵌入式操作系統(tǒng)。認為在ARM上跑嵌入式操作系統(tǒng)就代表技術(shù)先進、產(chǎn)品檔次高的觀點絕對是謬論。持這種觀點的人一定是沒有做過具體的產(chǎn)品開發(fā)。一個嵌入式產(chǎn)品是否需要跑嵌入式操作系統(tǒng),是由很多因素決定的,例如,產(chǎn)品的功能需求、開發(fā)成本、開發(fā)周期等都是需要綜合考慮的。對于ARM的初學(xué)者來說,前期我們并不建議使用嵌入式操作系統(tǒng),而應(yīng)當(dāng)把所有配套實驗都熟練掌握之后,可以考慮學(xué)習(xí)一個具體的嵌入式操作系統(tǒng)。對于初學(xué)者來講,我們推薦源碼公開的uC/OS-II嵌入式操作系統(tǒng),之所以推薦是因為這樣的方式方法很容易通過閱讀源碼達到徹底掌握嵌入式操作系統(tǒng)的目的。
要充分利用網(wǎng)絡(luò)資源,要有不恥下問的學(xué)習(xí)心態(tài)
我們已經(jīng)進入了信息大爆炸的時代,很多知識都可以通過網(wǎng)絡(luò)及時地獲得。在學(xué)習(xí)的過程中遇到困難時,可以通過網(wǎng)絡(luò)獲得幫助,只要我們虛心好學(xué),不恥下問(當(dāng)然要注意在網(wǎng)絡(luò)上尋求別人幫助的方式方法),一定會得到很多好心人的幫助,使自己每天都有所提高。
大家應(yīng)該都非常清楚“學(xué)無止境”的含義
學(xué)習(xí)ARM嵌入式開發(fā),尤其對于初學(xué)者而言,不應(yīng)該過早地、過多地將精力用在嵌入式系統(tǒng)移植、Linux內(nèi)核的研究和學(xué)習(xí)上,這些誘人的“熱點”很容易使初學(xué)者迷失方向,進而忽視對基礎(chǔ)知識的深入學(xué)習(xí),到頭來說得頭頭是道,可真的干起來卻離實際的需求差得太遠,作為初學(xué)者一定要明白學(xué)習(xí)的終目的是為了滿足應(yīng)用的需求,只要方法得當(dāng),掌握嵌入式開發(fā)應(yīng)用技術(shù)其實不是什么難事。