對于從事電子電路的設(shè)計(jì)者來說學(xué)習(xí)ARM 單片機(jī)系統(tǒng)是有些困難的。然而學(xué)習(xí)知識(shí)并不難,難的是理清其中的開發(fā)思路。接下來小編就從這一步入手淺談一下達(dá)內(nèi)廣州ARM學(xué)習(xí)班的開發(fā)思路。
1、做個(gè)小系統(tǒng)板。如果從沒有做過ARM的開發(fā),建議一開始不要貪大求全,把所有的應(yīng)用都做好,因?yàn)锳RM的啟動(dòng)方式和dsp或單片機(jī)有所不同,往往會(huì)遇到各種問題,所以建議先布一個(gè)僅有Flash、SRAM或SDRAM、CPU、JTAG、和復(fù)位信號(hào)的小系統(tǒng)板,留出擴(kuò)展接口。使小系統(tǒng)能夠正常運(yùn)行,任務(wù)就完成了一半,好在ARM的外圍接口基本都是標(biāo)準(zhǔn)接口,如果已有這些硬件的布線經(jīng)驗(yàn)?zāi)蔷透昧恕?/p>
2、寫啟動(dòng)代碼。根據(jù)硬件地址先寫一個(gè)能夠啟動(dòng)的小代碼,包括以下部分:初始化端口、屏蔽中斷、把程序拷貝到SRAM中、完成代碼的重映射、配置中斷句柄,連接到C語言入口。也許一些示例程序當(dāng)中bootloader會(huì)有很多東西,但是不要被這些復(fù)雜的程序所困擾,因?yàn)檫@是設(shè)計(jì)開發(fā)板過程中需要設(shè)計(jì),并不包含在ARM設(shè)計(jì)范疇中。
?。?、研究芯片資料。盡管ARM在內(nèi)核上兼容,但每家芯片都有自己的特色,編寫程序時(shí)必須考慮這些問題。尤其是女孩子,在這兒千萬別有依賴心理,總想拿別人的示例程序修改,卻越改越亂。
?。础⒘私獠僮飨到y(tǒng)程序。在ARM的應(yīng)用開放源代碼的程序很多,要想提高自己,就要多看別人的程序,linux,uc/os-II等等這些都是很好的原碼。
5、硬件。如果設(shè)計(jì)者自己制作硬件,每個(gè)廠家基本上都有針對該芯片的DEMO板原理圖。如果先將原理圖消化。在以后做設(shè)計(jì)時(shí)就能做到對資源的分配心中有數(shù)。器件的DATSHEET一定要好好消化。
?。丁⑿∠到y(tǒng)板。AT91可以用兩層板,其他的少4層;44b0的地和電源處理好也可用兩層板;談四層板和33歐電阻:選用四層板不僅是電源和地的問題,高速數(shù)字電路對走線的阻抗有要求,二層板不好控制阻抗。33歐電阻一般加在驅(qū)動(dòng)器端,也是起阻抗匹配作用的;布線時(shí)要先布數(shù)據(jù)地址線,和需要保證的高速線;在高頻的時(shí)候,PCB板上的走線都要看成傳輸線。
相信大家對達(dá)內(nèi)廣州ARM學(xué)習(xí)班的開發(fā)思路有一定的了解。很多時(shí)候,我們學(xué)習(xí)不一定要如此的趕,花一點(diǎn)時(shí)間捋一下思路,將會(huì)提高你的學(xué)習(xí)效率,對你學(xué)習(xí)ARM知識(shí)是有很大的幫助。