嵌入式精選 | ARM開發(fā)小白如何快速入門

ARM微處理器以廉價(jià)、高性能、耗能低的特點(diǎn)備受嵌入式開發(fā)者的歡迎,它適用于嵌入控制、消費(fèi)/教育類多媒體、DSP和移動(dòng)式應(yīng)用等眾多領(lǐng)域。RM嵌入式系統(tǒng)的開發(fā)的廣闊前景促使許多小伙伴想學(xué)習(xí)這方面的技術(shù),以便在激烈的職業(yè)競(jìng)爭(zhēng)中立于不敗之地。但是在初學(xué)入門階段,往往會(huì)遇到許多問題,比如:從哪里開始比較好?學(xué)了半天還是不懂?今天我們就來看看ARM嵌入式開發(fā)如何快速入門!

?

關(guān)于嵌入式開發(fā)人員

?

嵌入式簡(jiǎn)單來講,就是軟硬結(jié)合的東西,嵌入式開發(fā)又分為兩類,這兩類各有特點(diǎn),當(dāng)然需要的資質(zhì)也完全不同。一類是學(xué)電子工程、通信工程等偏硬件專業(yè)出身的人,主要是搞硬件設(shè)計(jì),有時(shí)要開發(fā)一些與硬件關(guān)系最密切的最底層軟件,如BootLoader和最初級(jí)的硬件驅(qū)動(dòng)程序等,他們的優(yōu)勢(shì)是對(duì)硬件原理非常清楚,當(dāng)然也會(huì)有不足之處,不足的是他們更擅長(zhǎng)定義各種硬件接口,但對(duì)復(fù)雜軟件系統(tǒng)往往表現(xiàn)的力不從心。

?

另一類就是學(xué)軟件、計(jì)算機(jī)專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開發(fā)。嵌入式設(shè)備的增值很大程度上取決于嵌入式軟件,這一領(lǐng)域占了嵌入式系統(tǒng)的最主要的工作部分,因?yàn)楹芏喙径贾溃度胧疆a(chǎn)品的差異很大程度在軟件上,所以都會(huì)將硬件設(shè)計(jì)外包給專門的硬件公司。

?

C語言的基礎(chǔ)必須打牢

?

關(guān)于ARM嵌入式系統(tǒng)是一門綜合性的學(xué)科,首先需要的是要掌握C語言。ARM嵌入式領(lǐng)域中大部分會(huì)使用到C語言。目前所有的8/16/32位(51系列,MSP430系列,ARM系列)都是使用C語言,以C語言為基礎(chǔ)的。c++要知道什么是類,怎么定義,繼承,接口,要深刻理解,當(dāng)然基本語法也是必不可少的。

?

操作系統(tǒng)的基本原理要掌握

?

在操作系統(tǒng)上,相關(guān)的基本原理是應(yīng)該去掌握的,這樣可以保證你對(duì)硬件和軟件又更深刻的了解,同時(shí)也具有更大的幫助,比如進(jìn)程、線程、系統(tǒng)是如何來進(jìn)行分配資源的,系統(tǒng)是如何來進(jìn)行管理硬件的,對(duì)于初學(xué)者一定要多看看,結(jié)合以后的項(xiàng)目經(jīng)驗(yàn),會(huì)有更好地理解。

?

掌握一種嵌入式操作系統(tǒng)

?

你必須掌握一門嵌入式操作系統(tǒng),比如linux或者是wince下的編程,這些對(duì)以后做應(yīng)用的編程會(huì)有很大的幫助。關(guān)于Linux的基本命令與使用,Linux文件系統(tǒng)的管理要清楚,哪個(gè)目錄存放是什么東西,有什么用,文件權(quán)限管理等。Linux設(shè)備驅(qū)動(dòng)的架構(gòu)要了解,初學(xué)者可以以米爾的MYD-AM335X開發(fā)板上的led驅(qū)動(dòng)分析一下,結(jié)合原理圖和linux設(shè)備驅(qū)動(dòng)相關(guān)書籍把每一行代碼都分析明白。

?

?

合適的ARM開發(fā)環(huán)境

?

對(duì)于初學(xué)者來講,應(yīng)該選擇適合ARM的軟件集成開發(fā)環(huán)境

?

目前,流行的ARM軟件集成開發(fā)環(huán)境有ADS1.2Keil uV3IAR等。對(duì)于51單片機(jī)應(yīng)用開發(fā)工程師來說,Keil開發(fā)環(huán)境應(yīng)該應(yīng)用得比較熟練,若采用Keil uV3進(jìn)行ARM軟件開發(fā),應(yīng)該可以快速上手。

?

但對(duì)于初學(xué)者來講,并不建議選擇Keil uV3進(jìn)行ARM軟件開發(fā),對(duì)于初學(xué)者應(yīng)該明白和了解其原因:1Keil uV3是第三方ARM軟件集成開發(fā)環(huán)境,目前支持的ARM芯片種類還不多,所帶的編譯器也并不完善;2、由于Keil uV3為了方便用戶的開發(fā),提供了現(xiàn)成的ARM啟動(dòng)文件,換句話說,它屏蔽了ARM開發(fā)中的一個(gè)重要內(nèi)容——啟動(dòng)代碼的編寫,而這一點(diǎn)對(duì)初學(xué)者來說應(yīng)該是非常重要的內(nèi)容

?

結(jié)語:其實(shí)針對(duì)ARM嵌入式開發(fā)這種實(shí)踐性較強(qiáng)的技能,最重要的還是邊學(xué)邊做不斷積累所遇到的問題,然后去解決。多敲幾行代碼、多操作幾次系統(tǒng)、多總結(jié)復(fù)盤,你學(xué)不好,誰還能學(xué)ARM開發(fā)!

the end

評(píng)論(0)