當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > 嵌入式硬件開發(fā)的步驟
說到嵌入式硬件開發(fā),不得不先理解什么是嵌入式。
度娘給出的答案是:
嵌入式系統(tǒng)是一種專用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在ROM中的嵌入式處理器控制板。事實(shí)上,所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機(jī)、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個(gè)程序?qū)崿F(xiàn)整個(gè)控制邏輯。
很多人對(duì)此還是不了解,那么,如何理解“嵌入式”呢?
從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,早期的基于X86體系結(jié)構(gòu)下的計(jì)算機(jī),CPU只是有運(yùn)算器和累加器的功能,而目前很多控制器芯片早已集成到CPU內(nèi)部,例如早期PC機(jī)有顯卡,而現(xiàn)在多數(shù)嵌入式處理器都帶有LCD控制器,某種意義上就相當(dāng)于顯卡。
從軟件上,就是在定制操作系統(tǒng)內(nèi)核里將應(yīng)用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時(shí)所選擇的應(yīng)用程序組件就是完成了軟件的“嵌入”。
綜上所述,嵌入式是一個(gè)綜合性的學(xué)科。
基于嵌入式的開發(fā),基本上分為四層:硬件層、驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用層。其中應(yīng)用層的開發(fā)最為簡(jiǎn)單,也是需求量最大的,也是公司里利潤(rùn)最高的部分。操作系統(tǒng)層的開發(fā)主要是移植相關(guān),很少有人自己寫操作系統(tǒng)。不過華為的鴻蒙系統(tǒng),還是很值得我們期待的。驅(qū)動(dòng)層的開發(fā)比較難。需要能看懂電路圖還要對(duì)操作系統(tǒng)內(nèi)核十分的精通。最后,說說硬件開發(fā),它是整個(gè)嵌入式系統(tǒng)的根本,是基礎(chǔ)。嵌入式硬件開發(fā)在很大程度上決定了嵌入式產(chǎn)品的性能。硬件工程師就像是設(shè)計(jì)師和建筑師,負(fù)責(zé)整個(gè)建筑的設(shè)計(jì)和建設(shè)。軟件工程師則是負(fù)責(zé)房間的裝修,錦上添花。
嵌入式硬件開發(fā)流程如圖1所示。
圖1 硬件開發(fā)流程
嵌入式硬件開發(fā)首先要了解產(chǎn)品需求。嵌入式產(chǎn)品的硬件形態(tài)各異,CPU從簡(jiǎn)單的4位、8位單片機(jī)到32位的ARM處理器,以及其它專用的IC。另外,依據(jù)產(chǎn)品的不同需求,外圍電路也不相同。硬件開發(fā)需要根據(jù)用戶需求綜合選定所需要的芯片以及傳感器,這一階段的工作還要分析整個(gè)系統(tǒng)設(shè)計(jì)的可行性,考慮設(shè)備的采購(gòu)是否容易,開發(fā)周期是否適合,開發(fā)過程中是否會(huì)有一些潛在的風(fēng)險(xiǎn),以及可能的應(yīng)對(duì)策略,需要提前進(jìn)行規(guī)劃。接下來,進(jìn)行硬件的總體設(shè)計(jì),編寫硬件的詳細(xì)設(shè)計(jì)方案文檔。在一些小公司或者創(chuàng)業(yè)型公司初期可能不是很重視詳細(xì)設(shè)計(jì)文檔的編寫,但,事實(shí)上,這些方案文檔對(duì)于后期debug、產(chǎn)品的升級(jí)以及更新?lián)Q代起到非常大的作用,在寫方案文檔的同時(shí),也會(huì)梳理一下思路,比如:電路、復(fù)位等一些比較重要的部分,會(huì)讓硬件設(shè)計(jì)人員在寫文檔的時(shí)候反復(fù)推敲。接下來,根據(jù)詳細(xì)設(shè)計(jì)熟練運(yùn)用設(shè)計(jì)工具進(jìn)行硬件電路原理圖設(shè)計(jì),畫PCB圖,根據(jù)需要可能需要畫至少四層以上的板,有一些主流的PCB板設(shè)計(jì)軟件,比如:PADS,Candence 和Protel,需要熟練掌握,畫好的PCB圖,接下來要進(jìn)行仿真測(cè)試,根據(jù)仿真結(jié)果進(jìn)行調(diào)整PCB板布局布線。沒有什么大的問題時(shí),可以進(jìn)行PCB加工文件制作和PCB打樣。一般先打出三到五塊樣板。拿到樣板,先檢查一下有沒有明顯的短路或者斷裂。檢查通過,將前期采購(gòu)的元器件和PCB空板交由生產(chǎn)廠家進(jìn)行焊接(如果PCB 電路不復(fù)雜,為了加快速度,也可以直接手工焊接元器件)。然后進(jìn)行實(shí)際測(cè)試、修改、調(diào)試等工作,測(cè)試的時(shí)候,需要對(duì)照產(chǎn)品的需求說明,一項(xiàng)一項(xiàng)進(jìn)行測(cè)試,確認(rèn)是否符合預(yù)期的要求,如果達(dá)不到要求,則需要對(duì)硬件產(chǎn)品進(jìn)行調(diào)試和修改,直到符合產(chǎn)品需求文檔。測(cè)試沒有什么大問題的時(shí)候,就可以批量生產(chǎn)硬件產(chǎn)品。
最終要開發(fā)出一款完整的、符合產(chǎn)品需求的硬件產(chǎn)品。