arm入門者的天堂一點(diǎn)經(jīng)驗(yàn)_第1頁
arm入門者的天堂一點(diǎn)經(jīng)驗(yàn)_第2頁
arm入門者的天堂一點(diǎn)經(jīng)驗(yàn)_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 首先說說 ARM 的發(fā)展可以用一片大好來形容,翻開各個(gè)公司的師職位。,招聘里面占據(jù)了大半工程廣義的是無非幾種:傳統(tǒng)的什么 51、AVR、PIC 稱做微處理器;DSP;FPGA。微控制器;ARM客觀的講,工作需求量上 DSP 的需求比 ARM 要多,而 ARM 和 FPGA 差不多。DSP 因?yàn)閿?shù)字處理與通信領(lǐng)域的空前發(fā)展而火暴,小到 MP3 射象頭,大到里的控制器,應(yīng)用面很廣。FPGA 的兄弟一般做 ANSIC(特殊設(shè)計(jì),好象是這么翻譯的)。而 ARM 單純說來并不比一個(gè)單片機(jī)強(qiáng)多少,但是它的獨(dú)特就在于不斷下降的價(jià)格和的性能。這完全依靠于 ARM 公司的,厲害!很佩服他們的眼光!值得注意的是

2、:在找工作中,企業(yè)(著名的,小的不算)對(duì)單純的發(fā)工程師并不比單片機(jī)重視,很少有大企業(yè)的職位里寫“從事過ARMARM 硬件開開發(fā)優(yōu)先”。寫的多的是什么?“軟件。LINUX”到這相信大家看出來了吧,需要的是硬件中的二 ARM 是硬件還是軟件很難說,ARM 是硬件,LINUX 是軟件。ARM 的硬件多半已經(jīng)模塊化了,像我這樣把板子改成這樣的就算動(dòng)的多的了,這同樣是 ARM 公司的,再次佩服。實(shí)際中的 LINUX 的開發(fā)工作,更耗時(shí)。從這方面說 ARM 應(yīng)該算是軟件了。在找工作中更是這樣,舉個(gè)例子,聯(lián)想里和 ARM 最接近的是“BIOS 工程師”是軟件,MOTO 里接近的是品開發(fā)歸為硬件。所以,不要L

3、INUX 工程師是軟件。而其他很多公司把產(chǎn)這個(gè),好好玩轉(zhuǎn)自己的板子才是關(guān)鍵。實(shí)在不爽你就把自己叫“開發(fā)工程師”三 要不要買開發(fā)板 買哪家是“在你個(gè)人的學(xué)習(xí)方法”,但是如果看家是需要看這騙筆記的水平,個(gè)還是買現(xiàn)成的。人1. 買買板子可以把注意力集中在軟件開發(fā)上,軟件開發(fā)(尤其是驅(qū)動(dòng))可以不必?fù)?dān)心自己硬件上的問題,我就是以便調(diào)試一邊寫驅(qū)動(dòng)和程序,每次寫驅(qū)動(dòng)前就要先確認(rèn)硬件沒問題。另外,買板子更和時(shí)間,做的板子,原理圖 PCB 花了2周以上!制版又 15 天,回來以后焊接 44B0 160 個(gè)腳!那叫一個(gè)麻煩花了多少錢呢?2 層板,制版費(fèi)就 300 塊!當(dāng)然我把接口都外引了,還做了個(gè) 20X18 的

4、 LCD 背板,板子比較大。總體下來元件+LCD 屏+PCB=11XX 塊!夠 2410 的了。再有就是買的資料相對(duì)來說比較全,但是不要指望有技術(shù)支持!都是你之后就不會(huì)理你。的,賣2. 做自己做可以更了解底層硬件,可以按照自己的要求加?xùn)|西,比如我就加了 GPS模塊、 GPRS 模塊、SD 卡模塊,擴(kuò)了個(gè) IIC 的 35 個(gè)鍵子的鍵盤、把 LCD 接口按照買的 LCD 改裝了,可以用 FPC 線直接連接。做的很爽的。玩一把嗎。當(dāng)然,你可以有策略的做,比如像我一樣,把 RAM 和 ROM,網(wǎng)絡(luò)都保持和某現(xiàn)成的板子一樣,這樣他們的資料你就可以拿過來直接用,給自己留個(gè)退路。其他的如 SD 了什么的自

5、己做。都達(dá)到了就是費(fèi)錢,費(fèi)時(shí)間。再有就是給做的朋友幾點(diǎn)建議:盡量拿到現(xiàn)成的板子,盡量多搜集其他板子的全套資料,一定要拿到一張沒問題的原理圖。網(wǎng)上流傳的原理圖多數(shù)是人!03 年畫的,再這里對(duì)表達(dá)一下敬意!牛但是那個(gè)圖有個(gè)小 BUG,我指的是03 版的,后來的沒這問題了。8019 那地址線和地址有問題。還有人仿照他的 PDF 圖畫的 SCH,更是!譴責(zé)!順便譴責(zé)把板子偷賣的人。3. 買哪家個(gè)人感覺分 3 類吧1) 首先是 ZLG 的,資料非常的全,感覺他是真正想教你怎么開發(fā) ARM,而不是像有的公司自己技術(shù)都沒做好就做個(gè)板子出來賣錢。但是最大的不利就是價(jià)格太貴!而且主要是 PHILIP 的,貨源比

6、較麻煩可能有人說 21XX 系列的不貴啊,那是總線不外擴(kuò)的,只能跑 UCOS,不能跑 UCLINUX。但是說是話,21XX 系列才是 ARM7 的價(jià)格性能結(jié)合點(diǎn)。ARM7 最適合做工業(yè)控制,ARM 普及,銷量都是怎么來的?都是 ARM7 來的,而 44B0 是典型的商業(yè)片子。但是,這里如果你看中的是為工作做準(zhǔn)備,還是選能跑 UCLINUX 的吧。但是仍然作為第一個(gè),因?yàn)椴锁B時(shí)期,合適的資料太重要了!在這里被 ZLG的務(wù)實(shí)感動(dòng)!你看人家那代碼寫的。2) 感覺立宇泰的 44B0 不錯(cuò)硬件沒別的,就是資料比較全的說,不像有些家,原理圖直接拿人家的,還錯(cuò)的3)找個(gè)最便宜的好象最便宜的有賣 350 的吧

7、?也是沒別的,就是即省了錢 還省時(shí)間搜至于資料全不全,別計(jì)較了硬件肯定好使就行吧。料,四 要不要有 51 AVR 等單片機(jī)基礎(chǔ)有更好,但沒有也無所謂。兩個(gè)月以前,們這的技術(shù)主干做看別人做,耳濡目染,本科學(xué)過單片機(jī),從來沒做過。我AVR 和 51,我就跟他們調(diào)過 C 語言程序。你看出來了?我是個(gè)不折不扣的菜鳥吧?但是做這個(gè)之前我特意找了 ZLG 的兩本書,看了里面的例子和原理圖,這很重要。例程里有匯編有 C,都看懂了就 OK,不用自己現(xiàn)寫五 開發(fā)都需要學(xué)習(xí)哪些軟件 總結(jié)起來最主要的有以下幾個(gè)吧 1 ADS 調(diào)試用確切的說是 ADS+AXD。ADS 里包含 AXD。原來都用 SDT 后來 ARM

8、公司停止對(duì) SDT支持了,改支持 ADS 了,還是用 ADS 吧。有的人的程序發(fā)布的仍然是 SDT 版本的,但基本都可以找到相應(yīng) ADS 的,新人在這里不要發(fā)蒙。ADS 是編譯器,AXD 是調(diào)試器。便宜成 AXF 以后再在 ARM 的 RAM 里調(diào)試。2 PLASHPGMFLASH 燒寫的軟件。AXD 在 RAM 里調(diào)試,掉電就沒有了,方便程序修改。調(diào)試好的程序再下到 FLASH 里,上電直接運(yùn)行。同類的軟件還有很多,什么 FLUTED 了、FLSHP 了都是,但 FLASHPGM 最好,要是有人還問 FLASH 不支持 BIN 格式文件的問題就要看我寫的 PLASHPGM 使用了。3 BAN

9、YANT 調(diào)試(不知道名對(duì)不,起這么個(gè)難記的,我一般都叫它“半羊”因?yàn)橹浪菐滋靹偝粤丝狙颍┱{(diào)試就是用它幫你使用更簡單的 JTAG(便宜?。﹣韺?shí)現(xiàn)原本 1K 才賣的 JTAG仿真器的大部分功能。JTAG 調(diào)試原理看我另一篇筆記。簡單的就可以把他理解為你自己做的 JTAG 的驅(qū)動(dòng)就行了。調(diào)試還有很多種,什么AG 了、ARM7 了(不知體叫什么,就記得可執(zhí)行文件叫 ARM7.EXE)都是,BANYANT 比較好。需要注意的是,沒種調(diào)試安裝方法雖然都簡單但都不一樣,需要看說明。而且 AXD 調(diào)試之前都要運(yùn)行。了,就別怕麻煩了。4 ARM-ELF-TOOLS 工具鏈里面是 UCLINUX 開發(fā)用的工

10、具比如 ARM-ELF-GCC 只類的。工具鏈就是把很多工具打包在一起發(fā)布的方便你開發(fā)的東西。具體安裝方法看我另一篇筆記。另外如果你開發(fā) LINUX 就要用 ARM-LINUX-TOOLS,不一樣,不通用。5 U-BOOT大名鼎鼎的 BOOTLOADER 生成工具,同類的好象還有 VIVI(名字很曖昧)生成的 BOOTLOADER 燒到 FLASH 里,然后就可以用 BOOTLOADER了燒寫其他有了 BOOTLOADER 才能下 UCLINUX。BOOTLOADER 就像電腦上的 BIOS。當(dāng)然UCOS的不用這個(gè),用什么我不知道:)最新版本是 1.1.4 具體使用方法看我另一篇筆記吧。6 U

11、CLINUX 包UCLINUX 的源碼包,不用多說了吧?建議大家用現(xiàn)成的先體會(huì)一下,然后再自己編譯,裁剪。因?yàn)閱为?dú) UCLINUX 的編輯技術(shù)上比較簡單,但涉及的方面還是比較廣的。7 VMWARE老牌的虛擬機(jī)軟件,在一個(gè)機(jī)器上虛擬出一個(gè)機(jī)器裝 LINUX(PC 上用的),省得你來回開關(guān)機(jī)了。記得裝 VMWARE-TOOLS,安裝方法在我另一篇筆記里。六 有哪些書主要ZLG 的三本書,有這 3 本再加網(wǎng)絡(luò)就不用別的書了,其中主要前 2本,3 是介紹體系結(jié)構(gòu)的,也不錯(cuò)LINUX 系統(tǒng)構(gòu)建與驅(qū)動(dòng)開發(fā),北航版1 ARM驅(qū)動(dòng)寫的很詳細(xì),前期開發(fā)介紹也很好系統(tǒng)實(shí)驗(yàn)(二),北航版2 ARM有 ZLG2200

12、 的原理圖,實(shí)驗(yàn)程序和注釋,了解人家是怎么開發(fā)的。系統(tǒng)基礎(chǔ)3 ARM最重要的是體系結(jié)構(gòu),匯編部分介紹,看看吧,增加理論素質(zhì)。4 44B0寫在這里是強(qiáng)調(diào)它的重要。不ZLG 早期出的紅色皮的 ARM 什么體系結(jié)構(gòu)只類的寫的太多,看煩了。其他的書沒了幾本,沒看見好的,大家有看過的吧。七 選 UCOS?UCLINUX?LINUX?VXWORKS?還是當(dāng)單片機(jī)用1 搞開發(fā),工程設(shè)計(jì),用 UCOS,小巧,多進(jìn)程,簡單,體現(xiàn)了 ARM7 的精髓。2 LINUX 正根的系統(tǒng),LINUX 消費(fèi)與通信領(lǐng)域用的比較多,但缺點(diǎn)是必須ARM9 才能跑,ARM9 的板子自己做就但是還是選 ARM9+LINUX,6 層板太

13、貴。買開發(fā)板 1K 達(dá)底吧。3 UCLINUX 算投機(jī)系統(tǒng):)ARM7 上可以跑,由有 LINUX 近親,學(xué)好好可以比較方便的轉(zhuǎn)向 LINUX,像我一樣的窮鬼用吧,呵呵 4 VXWORKS學(xué)好后可以找到高薪工作,但工作機(jī)會(huì)本身并不比 LINUX 好找。5 當(dāng)單片機(jī)用不,雖然我景仰的 ZLG 一直號(hào)召這么干。因?yàn)閷?duì)于學(xué)習(xí)來說多進(jìn)程的系統(tǒng)設(shè)計(jì)才是 ARM7 的玩頭,至少你也要整個(gè) UCOS ?。海┯信笥褑栁蚁葘W(xué)這個(gè)當(dāng)基礎(chǔ)不行嗎?那當(dāng)然可以但我當(dāng)時(shí)就用了1 周搞定,就還是當(dāng)時(shí)是我先的寫的 LED晶陣不陣ADS 在 RAM 中調(diào)試的筆記。后來我清空 FLASH 用的小閃爍程序呢。另外 1其中還因?yàn)樽约?/p>

14、過于菜,沒把 OM 設(shè)置好導(dǎo)致哈哈。這個(gè)是必須做的,但一帶而過。目標(biāo)放的遠(yuǎn)一點(diǎn)。八 學(xué)習(xí)要用多長時(shí)間我從菜鳥到現(xiàn)在兩個(gè)多月,中間擾數(shù)次。仍然搞定了 PCB 設(shè)計(jì)與制版,RAM UCLINUX(沒剪裁,用現(xiàn)成的),LCD 驅(qū)調(diào)試,F(xiàn)LASH動(dòng)。,UBOOT 移植和再次坦誠的說:我確實(shí)比較菜,說這些不是讓大家羨慕,只是告訴該比這個(gè)更好”我相信良好的態(tài)度+合適的方法+及時(shí)的總結(jié)=成績“應(yīng)九 ARM 都玩什么就幾點(diǎn)1 硬件設(shè)計(jì)2 系統(tǒng)移植3 驅(qū)動(dòng)開發(fā)4 應(yīng)用開發(fā)沒了。其中把注意力放在后兩個(gè)上,3 有難度,4 比較靈活,最重要的是都是找工作的砝碼。十 我用的什么板子很多人問我這個(gè)問題,我特意寫過一個(gè)的。

15、再說一次吧。我是自己做的,RAM、ROM、8019 等比較麻煩而當(dāng)時(shí)的自己不理解的都按照龔俊的做的。保持其他不便的情況下做了如下改動(dòng)。1 加了串口通信的 GPS 模塊、 GPRS 模塊一個(gè) UART0,一個(gè) UART1,當(dāng)與要用超級(jí)終端時(shí)用跳線切換。 2 SD 卡,和 7843 觸摸屏同時(shí)掛在 SPI 總線上,因?yàn)?SPI 只能掛一個(gè)設(shè)備,同時(shí)還做了 I/O 模擬的準(zhǔn)備,把兩個(gè)設(shè)備又通過跳線掛在 4 個(gè) IO 上。3 擴(kuò)了個(gè) IIC 的 35 個(gè)鍵子的鍵盤用的 ZLG 的 7290,不占用 CPU,最大支持 64 個(gè)鍵子,只上了 35 個(gè),其他留接口。4 把 LCD 接口按照買的 LCD 改裝

16、了,可以用 FPC 線直接連接。所以改動(dòng)雖然多,但真正很移植了,初期調(diào)試有關(guān)的并沒動(dòng),就是為了現(xiàn)在不那么菜的時(shí)候做準(zhǔn)備:)十一 開發(fā)流程這里是開發(fā)流程1 設(shè)計(jì)原理圖(含 WIGGLER 的 JTAG 訪真器)2 設(shè)計(jì) PCB(含 WIGGLER 的 JTAG 訪真器)3 制版4 焊接電壓,確定電壓沒問題5 焊接 44B0+JTAG 電路+WIGGLER 的 JTAG 訪真器+周邊電路,用 BANYANT+仿真器連接,BANYANT 提示錯(cuò)誤,但可以顯示 44B0說明 44B0 沒問題,好象是 0X0F0F0F0F 只類的,6 焊接晶體+RAM+ROM+周邊電路,用 BANYANT+仿真器連接,可以顯示正確的 44B0 了7 用 BANYANT+仿真器連接,開 AXD,在命令行窗口操作 RAM,看可不可以修改,可以的話(用內(nèi)存窗口看 RAM 地址)RAM 就沒問題可以用這個(gè)命令“setmem 0xc000000,0xff,32”RAM 掛在 B6 上 所以地址是 0XC000000,你要是改了就也得改。8 用我寫的自己寫了個(gè) C 工程模板又寫了個(gè)使用說明 里的方法調(diào)試程序吧,寫個(gè)簡單的,我當(dāng)時(shí)寫個(gè) LED 閃爍的。看好使不。9 把程序按照FLASH 燒寫總結(jié) 里的燒到 FLASH 里,測(cè)試一下10 按照UBOOT 移植操作移植 UBOOT11 按照UCLINUX簡單說明下個(gè) U

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論