嵌入式軟件開發(fā)流程圖(嵌入式軟件的開發(fā)流程)
今天給各位分享嵌入式軟件開發(fā)流程圖的知識,其中也會對嵌入式軟件的開發(fā)流程進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!
本文目錄一覽:
嵌入式產(chǎn)品開發(fā)流程
嵌入式硬件開發(fā)流程一般分為8 個階段:
嵌入式產(chǎn)品的硬件形態(tài)各異,CPU 從簡單的4 位/8 位單片機(jī)到32 位的ARM 處理器,以及其他專用IC。另外,依據(jù)產(chǎn)品的不同需求,外圍電路也各不相同。每一次硬件開發(fā)過程,都需要依據(jù)實(shí)際的需求,考慮多方面的因素,選擇最合適的方案來。
硬件階段
1:硬件產(chǎn)品需求 和普通的嵌入式產(chǎn)品需求一樣。
階段1:
產(chǎn)品需求。
硬件階段2:
硬件總體設(shè)計(jì)方案
一個硬件開發(fā)項(xiàng)目,它的需求可能來自很多方面,比如市場產(chǎn)品的需要或性能提升的要求等,因此,作為一個硬件設(shè)計(jì)人員,我們需要主動去了解各個方面的需求并分析,根據(jù)系統(tǒng)所要完成的功能,選擇最合適的硬件方案。
在這一階段,我們需要分析整個系統(tǒng)設(shè)計(jì)的可行性,包括方案中主要器件的可采購性,產(chǎn)品開發(fā)投入,項(xiàng)目開發(fā)周期預(yù)計(jì),開發(fā)風(fēng)險評估等,并針對開發(fā)過程中可能遇到的問題,提前選擇應(yīng)對方案,保證硬件的順利完成。
硬件階段3:
硬件電路原理圖設(shè)計(jì)
在系統(tǒng)方案確定后,我們即可以開展相關(guān)的設(shè)計(jì)工作,原理設(shè)計(jì)主要包括系統(tǒng)總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),最終產(chǎn)生詳細(xì)的設(shè)計(jì)文檔和硬件原理圖。
原理設(shè)計(jì)和PCB 設(shè)計(jì)是設(shè)計(jì)人員最主要的兩個工作之一,在原理設(shè)計(jì)過程中,我們需要規(guī)劃硬件內(nèi)部資源,如系統(tǒng)存儲空間,以及各個外圍電路模塊的實(shí)現(xiàn)。另外,對系統(tǒng)主要的外圍電路,如電源、復(fù)位等也需要仔細(xì)的考慮,在一些高速設(shè)計(jì)或特殊應(yīng)用場合,還需要考慮EMC/EMI 等。
電源是保證硬件系統(tǒng)正常工作的基礎(chǔ),設(shè)計(jì)中要詳細(xì)的分析:系統(tǒng)能夠提供的電源輸入;單板需要產(chǎn)生的電源輸出;各個電源需要提供的電流大小;電源電路效率;各個電源能夠允許的波動范圍;整個電源系統(tǒng)需要的上電順序等等。
為了系統(tǒng)穩(wěn)定可靠的工作,復(fù)位電路的設(shè)計(jì)也非常重要,如何保證系統(tǒng)不會在外界干擾的情況下異常復(fù)位,如何保證在系統(tǒng)運(yùn)行異常的時候能夠及時復(fù)位,以及如何合理的復(fù)位,才能保證系統(tǒng)完整的復(fù)位后,這些也都是我們在原理設(shè)計(jì)的時候需要考慮的。
同樣的,時鐘電路的設(shè)計(jì)也是非常重要的一個方面,一個不好的時鐘電路設(shè)計(jì),可能會引起通信產(chǎn)品的數(shù)據(jù)丟包,產(chǎn)生大的EMI,甚至導(dǎo)致系統(tǒng)不穩(wěn)定。
編者按:原理圖設(shè)計(jì)中要有“拿來主義”!現(xiàn)在的芯片廠家一般都可以提供參考設(shè)計(jì)的原理圖,所以要盡量的借助這些資源,在充分理解參考設(shè)計(jì)的基礎(chǔ)上,做一些自己的發(fā)揮。
硬件階段4:
PCB圖設(shè)計(jì)
PCB 設(shè)計(jì)階段,即是將原理圖設(shè)計(jì)轉(zhuǎn)化為實(shí)際的可加工的PCB 線路板,目前主流的PCB 設(shè)計(jì)軟件有PADS,Candence 和Protel 幾種。
PCB 設(shè)計(jì),尤其是高速PCB,需要考慮EMC/EMI,阻抗控制,信號質(zhì)量等,對PCB 設(shè)計(jì)人員的要求比較高。為了驗(yàn)證設(shè)計(jì)的PCB 是否符合要求,有的還需要進(jìn)行PCB 仿真。并依據(jù)仿真結(jié)果調(diào)整PCB 的布局布線,完成整個的設(shè)計(jì)。
硬件階段5:
PCB加工文件制作與PCB打樣
PCB 繪制完成以后,在這一階段,需要生成加工廠可識別的加工文件,即常說的光繪文件,將其交給加工廠打樣PCB 空板。一般1~4 層板可以在一周內(nèi)完成打樣。
硬件階段6:
硬件產(chǎn)品的焊接與調(diào)試
在拿到加工廠打樣會的 PCB 空板以后,接下來我們,需要檢查PCB 空板是否和我們設(shè)計(jì)預(yù)期一樣,是否存在明顯的短路或斷痕,檢查通過后,則需要將前期采購的元器件和PCB 空板交由生產(chǎn)廠家進(jìn)行焊接(如果PCB 電路不復(fù)雜,為了加快速度,也可以直接手工焊接元器件)。
當(dāng)PCB 已經(jīng)焊接完成后,在調(diào)試PCB 之前,一定要先認(rèn)真檢查是否有可見的短路和管腳搭錫等故障,檢查是否有元器件型號放置錯誤,第一腳放置錯誤,漏裝配等問題,然后用萬用表測量各個電源到地的電阻,以檢查是否有短路,這樣可以避免貿(mào)然上電后損壞單板。調(diào)試的過程中要有平和的心態(tài),遇見問題是非常正常的,要做的就是多做比較和分析,逐步的排除可能的原因,直致最終調(diào)試成功。
在硬件調(diào)試過程中,需要經(jīng)常使用到的調(diào)試工具有萬用表和示波器,邏輯分析儀等,用于測試和觀察板內(nèi)信號電壓和信號質(zhì)量,信號時序是否滿足要求。
硬件階段7:
硬件產(chǎn)品測試
當(dāng)硬件產(chǎn)品調(diào)試通過以后,需要對照產(chǎn)品產(chǎn)品的需求說明,一項(xiàng)一項(xiàng)進(jìn)行測試,確認(rèn)是否符合預(yù)期的要求,如果達(dá)不到要求,則需要對硬件產(chǎn)品進(jìn)行調(diào)試和修改,直到符合產(chǎn)品需求文明(一般都以需求說明文檔作為評判的一句,當(dāng)然明顯的需求說明錯誤除外)。
硬件階段8:
硬件產(chǎn)品
最終開發(fā)的硬件成功。一個完整的,完成符合產(chǎn)品需求的硬件產(chǎn)品還不能說明一個成功的產(chǎn)品開發(fā)過程,我們還需要按照預(yù)定計(jì)劃,準(zhǔn)時高質(zhì)量的完成。才是一個成功的產(chǎn)品開發(fā)過程。
嵌入式系統(tǒng)的設(shè)計(jì)流程是什么?
一、嵌入式系統(tǒng)開發(fā)流程?
1、系統(tǒng)需求分析:根據(jù)需求,確定設(shè)計(jì)任務(wù)和設(shè)計(jì)目標(biāo),指定設(shè)計(jì)說明書。?
2、體系結(jié)構(gòu)設(shè)計(jì):描述系統(tǒng)如何實(shí)現(xiàn)所述的功能需求,包括對硬件、軟件和執(zhí)行裝置的功能劃分以及系統(tǒng)的軟件、硬件選型。
3、硬件/軟件協(xié)同設(shè)計(jì):基于體系結(jié)構(gòu)的設(shè)計(jì)結(jié)果,對系統(tǒng)的硬件、軟件進(jìn)行詳細(xì)設(shè)計(jì)。一般情況下嵌入式系統(tǒng)設(shè)計(jì)的工作大部分都集中在軟件設(shè)計(jì)上,現(xiàn)代軟件工程經(jīng)常采用的方法是面向?qū)ο蠹夹g(shù)、軟件組件技術(shù)和模塊化設(shè)計(jì)。?
4、系統(tǒng)集成:把系統(tǒng)的硬件、軟件和執(zhí)行裝置集成在一起進(jìn)行調(diào)試,發(fā)現(xiàn)并改進(jìn)設(shè)計(jì)過程中的不足之處。
5、系統(tǒng)測試:對設(shè)計(jì)好的系統(tǒng)進(jìn)行測試,檢驗(yàn)系統(tǒng)是否滿足實(shí)際需求。
?
二、嵌入式軟件開發(fā)?
嵌入式軟件開發(fā)的一般流程為需求分析、軟件概要設(shè)計(jì)、軟件詳細(xì)設(shè)計(jì)、軟件實(shí)現(xiàn)和軟件測試。與一般的軟件開發(fā)區(qū)別主要在于軟件實(shí)現(xiàn)的編譯和調(diào)試兩部分即為交叉編譯與交叉調(diào)試。
嵌入式軟件開發(fā)方法
根據(jù)使用的開發(fā)工具套件不同,軟件開發(fā)流程會有差異,但主要步驟大致相同。對于使用宿主機(jī)(PC)的集成化開發(fā)環(huán)境,軟件開發(fā)流程一般包括創(chuàng)建項(xiàng)目、添加文件、編譯連接、下載調(diào)試等步驟,如下圖所示。
圖1:嵌入式軟件開發(fā)流程
(1)創(chuàng)建工程項(xiàng)目:在配置硬件設(shè)備和安裝軟件開發(fā)工具后,就可以開始創(chuàng)建工程項(xiàng)目,通常需要選擇項(xiàng)目文件的存儲位置及目標(biāo)處理器。
(2)添加項(xiàng)目文件:開發(fā)人員需要創(chuàng)建源程序文件,編寫應(yīng)用程序代碼,并添加到工程項(xiàng)目中;還將使用設(shè)備驅(qū)動程序的庫文件,包括啟動代碼、頭文件和一些外設(shè)控制函數(shù),甚至中間件(Middleware)等。這些文件也需要添加到項(xiàng)目中。
(3)配置工程選項(xiàng):源于硬件設(shè)備的多樣性和軟件工具的復(fù)雜性,工程項(xiàng)目提供了不少選項(xiàng),需要開發(fā)人員配置,如輸出文件類型和位置、編譯選項(xiàng)和優(yōu)化類型等,還要根據(jù)選用的開發(fā)板和在線仿真器,配置代碼調(diào)試和下載選項(xiàng)等。
(4)交叉編譯連接:利用開發(fā)軟件工具對項(xiàng)目的多個文件分別編譯,生成相應(yīng)的目標(biāo)文件,然后連接生成最終的可執(zhí)行文件映像,以下載到目標(biāo)設(shè)備的文件格式保存。如果編譯連接有錯誤,返回修改;如果沒有錯誤,先進(jìn)行軟件模擬運(yùn)行和調(diào)試,再下載到開發(fā)板運(yùn)行和調(diào)試。
(5)程序下載:目前,絕大多數(shù)微控制器都使用閃存(Flash Memory)保存程序。創(chuàng)建可執(zhí)行文件映像后,需要使用在線仿真器(或串口、網(wǎng)口)將其下載到微控制器的閃存中,實(shí)現(xiàn)閃存的編程;還可以將可執(zhí)行文件下載到SRAM中運(yùn)行。
(6)運(yùn)行和調(diào)試:程序下載后,可以啟動運(yùn)行,看是否正常工作。如果有問題,連接在線仿真器,借助軟件開發(fā)工具的調(diào)試環(huán)境進(jìn)行斷點(diǎn)和單步調(diào)試,觀察程序操作的詳細(xì)過程。如果應(yīng)用程序運(yùn)行有錯誤,返回修改。
嵌入式軟件開發(fā)流程圖的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于嵌入式軟件的開發(fā)流程、嵌入式軟件開發(fā)流程圖的信息別忘了在本站進(jìn)行查找喔。