1. 程式人生 > >一個簡單的arm開發板的製作過程

一個簡單的arm開發板的製作過程

做一個簡單的、自己學習用的,不僅可以節約成本,還能享受其中的樂趣。今天我就將自己在製作嵌入式開發板過程中的一些經驗和步驟講給大家,希望對大家有所幫助!本文tag:arm開發板 arm7 arm9 S3C2410核心板一、原理圖的設計首先,你先要考慮自己打算做一個什麼樣的板,是為了完成某個專案,還是做個學習用的板。明確目的後,開始設計原理圖。目前我們常用的ARM開發板多是三星的,也有PHILIPS的。這兩大類晶片在網上可以找到很豐富的資源,包括原理圖和測試程式,尤其是44B0的晶片,資料幾乎是滿網飛了。找一個晶片的原理圖,在其基礎上做些改動,使之更適合自己的實際應用。 ARM7的晶片使用起來會稍微簡單些,畢竟其原理構造和普通的

51微控制器有些類似,不需要太費事就可以完成。對於ARM9的,設計原理圖會比較麻煩。建議採用核心板的方式,把ARM晶片和儲存器放在一個小板上,然後再做底板,這樣即使設計出了問題,也方便重新修改設計。原理圖方面我就不多羅嗦了,網上大把參照圖,DOWN下來自己修改就可以了,確定原理圖無誤後,就需要開始布板了。對於ARM7,速度比較低的那種(100M以下的),板只要布的合適就可以了,沒有什麼特別值得注意的地方,有些訊號線上可能需要串上一些小電阻,做高頻電阻匹配用。對於ARM9的板,最少需要4層板。(如果雙面能把線佈下,雙面板也可以的)。這裡也許有人會問,4層板是否夠用。我覺得是完全夠的。我自己設計過一個
S3C2410核心板,用4層板做,在200M下也能正常工作。另外,我從網上下了個6層板的PCB,我把它改成了4層板,雖還沒來得及除錯,我估計工作起來也不是問題。為什麼我這麼說呢,因為看整個電路就可以大概知道一些,只要你布的板把電源和時鐘處理的得當,其他邏輯訊號線不是什麼太大問題。當然了,前提是邏輯訊號不能亂布。這裡需要說明一點,做4層板完全是為了自己學習用,因為做6層板的價格太高了,個人承擔不起。但如果你是打算來做工業裝置或實際專案,還是使用6層板吧,這樣能夠在硬體上起到一定的保障作用。二、PCB加工板布好之後,就要外發加工了。如果你是公司給你做板,那就不用開這個部分了。個人做板的可以繼續看下去。找廠家做板就有些技巧了。先說雙面板的。雙面板普通廠家都可以做,線距和
ARM7晶片的引腳間距一樣就可以了。寬一點更好。價格一般不會很貴,有200RMB就足夠做5個板來讓你除錯了。北京和深圳的行情好象不太一樣。在深圳好象是需要收大概600塊的工程費,然後是按面積算。北京則是直接按面積算,總價需要在100塊上以上,不足100的按100來算。同時北京還可以自己來定做板方法,比如板上不加絲印、不鍍金來降低價格。不管怎麼說,只要耐心找,總能找到一家適合自己的廠家來做板。當然了,也有些廠家價格低,質量也會梢差一點,做好的板拿回來仔細檢查,就不會影響到我們測試。我和另一個同學04年的時候,在北京用了150塊錢做了3個板,沒有絲印,沒有銑邊,僅僅鍍了層錫。回來後自己把板處理一遍。檢查出了一處短路(我們布的那個板,線條過細,線距也很小,這是到後來才知道的)。修理完後焊好的板工作很穩定。再說多層板的。由於多層板一般多用於BGA封裝的晶片,檢查的時候就不容易檢查,加上內層佈線我們看不到,在選廠家的時候需要適當選一些可信的廠家,最好是能做飛針測試的廠家。做一個4層板的模費大概是在1000~2000個別廠家可能會要2000以上,但那種廠家是能保證給你的板絕對OK的,有的時候為了板的質量,也需要犧牲一點模費。一般,你付足模費錢後,廠家可以免費給你做幾個樣板,如果你想多要幾個板,一定要提前跟廠家說,他們可能會多收一點錢,也可能不收錢。這樣看你的談判技巧了。因為他一次做一個板和一次做30個板的價格是一樣的做板方面需要注意的是,板拿回來後需要仔細檢查,發現開短路的地方需要及時修理。所在地沒有加工板的地方,可以考慮網上訂做。他們做完後可以郵寄給你,價格方面需要自己去談了。三、元件的購買購買元件很容易。當然了,你得找到合適的貨源。北京的方面,在中關村就可以找到晶片。像電阻電容這樣的元件也可以零售(100個一賣)。深圳這邊好一些的店面一般不零售。但這沒關係,在華強多轉轉,慢慢的和店老闆磨一磨,拿上一兩百個元件還是沒有問題的。如果不能找到像北京、深圳這樣有專門電子市場的地方,也不要放棄,可以考慮在網上找一找,有些地方是賣套件的,可以自己買一套來玩玩。價格不會差很遠的。元件購買方面需要注意的是,不要賣到翻新件。四、元件焊接板拿回來後,就需要開始焊元件了,的晶片會比較好焊,焊盤上先上錫,然後一個腳一腳的焊上去就可以了。當然也可以採用拖焊的方法,總之,只要焊的牢靠就行了。對於BGA焊接,可能會更簡單一點。因為BGA焊接是外發加工的,自己最好不要焊。焊接GBA晶片最好是找那些修手機或是修膝上型電腦的廠家焊。就算他們沒有專門焊接BGA的裝置,憑他們的經驗,也可以把晶片焊好。焊接BGA晶片的價格差距很大,價格大多在100塊左右的。不過也有便宜的,我在華強找的一家,焊個S3C2410只要20塊,成功率在90%以上,我在那裡焊的幾個板,沒有一個有問題的。如果是批量生產,還是找比較好的加工廠做吧,畢竟少修電腦的廠家只是拿來給我們自己玩玩罷了。焊接除錯過程中有個小技巧,也算是一個注意點。板最好是焊一部分除錯一部分。一般焊接除錯的順序是:電源->主晶片外圍器件->主晶片->SRAM->FLASH->其他外設。按照這樣的序除錯焊接,優點在於能一步一步的排除問題點。假設,當你把主晶片,儲存器都焊好,而且也除錯可以工作了,再去焊你的電源,結果板上的電源部分出問題了,一個高壓竄到了主晶片上,那後果不是很嚴重?五、電源、主晶片的電路除錯焊好電源,把板上主晶片位置與電源相連的引腳測一遍,看看是不是需要的電壓,這樣做可以保證主晶片供電正常,使主晶片能夠工作。電源部分除錯完成後,接下來是焊與主晶片相關的外圍元件,如復位電路,時鐘部分,JTAG介面部分,系統配置部分。這幾個部分焊好後,再焊上主晶片,和主晶片一起除錯。主晶片焊好後,通過JTAG介面連線到電腦上,在電腦上用JTAG除錯代理軟體,就應該可以檢查到板上的晶片了。如果不用代理軟體,用ulink之類的東西也可以。不過個人覺得用代理軟體最簡單了。如果軟體檢查不到,則表示主晶片沒有正常工作,或者JTAG部分沒有工作,這個時候就需要詳細檢查各個部分了。一般來說,這個環節是整個除錯工作中最重要的部分,主晶片如果不能工作,其他元件就不要再焊了,焊上也沒有意義。這個環節容易出問題的就是復位電路工作不正常,主晶片某些引腳虛焊。主晶片的系統配置正確與否暫時不會影響到晶片是否工作,可以最後檢查。當電腦能夠成功的檢查到板上的晶片時,激動的心情也會隨之而來。哈哈~~~


六、SRAMFLASH的除錯接下來,需要除錯的是SRAM為什麼是先除錯SRAM而不是先除錯FLASH呢?因為SRAM可以直接由ARM晶片來讀寫,只要訊號線接的沒錯,系統設定沒錯,那SRAM一定會工作,除非你買到壞的SRAM。用JTAG介面將板和電腦連線,開啟AXDCommand lineMemory watch,使用命令列來對晶片進行初始化。AXD中使用setmem命令對相關暫存器進行設定。如果不知道如何使用Command line,可以在命令列中輸入help來查詢。設定完暫存器後,後在Memory watch中修改對應地址單元的資料,就可以看到修改後的資料儲存下來了。我用這個方法測試過LPC2214451044B02410,都可以用這個方法來測試SRAM是否已經工作了。當使用這種方法修改SRAM資料,需要注意的是,你所修改的地址,必須是位於SRAM地址範圍內的,否則修改後不會得到正確的結果。如果發現修改後的資料不能得到你想要的資料,可能存在兩個問題:1是電路板上資料線存在開短路。2是晶片的初始化設定不正確,導致儲存器對映錯誤,修改好即可。一般來說,SRAM如果能夠順利工作,則FLASH也可以順利工作。焊好FLASH,使用FLASHPGM燒一個程式來實驗一下。如果能順利燒入,則表示FLASH可以正常工作。如果不能正常燒入程式,多半情況是焊接不夠好,FLASH可能存在短路或者虛焊。這裡需要知道一件事,FLASHPGM軟體是利用SRAM來燒錄FLASH的。它先將一段可以燒錄FLASH的程式下載到SRAM中,執行這段小程式,然後再燒錄FLASH,所以你提供給FLASHPGM的晶片初始化程式必須正確,這樣才可能正常燒錄FLASH,否則燒錄肯定是失敗的。對於2410這種既掛NAND FLASH又掛NOR FLASH的晶片,除錯起來也很容易。用FLASHPGM除錯NOR FLASH,用三星提供的那個小燒錄工具除錯NAND FLASH除錯到這裡,說明你的板已經可以工作了。焊好串列埠部分電路,寫上一段程式測試串列埠,除錯串列埠部分。串列埠部分可以工作後,你的開發板就可以用了。當然,你的板上肯定還有其他東西,不要著急,一點一點的除錯,總是可以除錯完成的。整個板的除錯過程中,越是靠前的步驟就越是難調,後面的外設相對好調一些。總的來說,只要你想辦法,板是一定可以做成的,除錯也可以很快完成。

好了,文章就寫到這,有問題的朋友可撥打0755-21199019手機13148818895直接與我聯絡