單片機方案開發流程,方案公司開發單片機應用需考慮哪些因素?

日期:2018-06-27 / 人氣: / 來源:www.jpauqs.live

對于單片機方案開發,從客戶提出開發需求到成品,其簡要流程如下:

方案需求分析

方案可行評估

方案總體設計

方案硬件設計

方案軟件設計

方案方案聯調

方案運檢維護

單片機方案開發

單片機方案開發個流程中詳細內容如下。

單片機方案需求分析

單片機方案確定之后,應充分理解、認識客戶所提出的單片機方案功能要求,通過用戶了解方案的設計目標和技術指標。該階段主要解決以下問題。

1.分析單片機方案的任務。若方案用于檢測,則要弄清楚檢測的參數有哪些,精度要求如何。若方案用于控制,則要弄清楚控制的回路有哪幾個,控制的實時性有什么要求等;

2.弄清楚輸入信號的個數、種類、圍及相互關系,信號,這些信號必須進行何種變換,怎樣與單片機連接等;

3.弄清楚輸出信號的個數、種類和變化范圍,采用何種執行機構實現,使用什么電路作信號變換,怎樣和輸出執行機構連接,如何達到執行機構所需的功率參數要求等;

4.明確需要設置怎樣的人機對話接口,如開關、鍵盤、顯示及發聲電路等;

5.了解方案的應用環境條件,如溫度、濕度、供電情況、現場干擾、控制室與工作現場的距離等,采用何種措施防止干擾和進行保護;

6.明確方案的各項技術指標,合理選擇實現這些指標的方案,以達到最佳的性價比。

可行性分析

根據方案需求分析所得到的各項技術指標,如測量精度、響應時間、測量范圍、可靠性要求等,進行可行性分析。通過調研目前的技術水平,判定是否有能力完成該方案的開發,并達到各項技術指標。可行性分析通常包括以下幾個方面的內容。

1.了解國內外同類方案的開發水平、器件性能、設備水平、供應狀態等;

2.了解可移植的硬、軟件技術。能移植的盡量移植,以防止大量低水平重復勞動;

3.摸清軟、硬件技術難度,明確方案的關鍵所在;

4.了解擬用器件的技術支持與開發環境。

總體設計

方案總體設計包括方案主要器件的選擇及方案硬、軟件功能的劃分與協調。方案總體設計主要考慮以下幾個問題。

1.確定單片機機型

根據方案的功能目標復雜程度、可靠性要求、精度和速度要求,選擇性價比合理的單片機機型。單片機的種類、機型較多,不同型號、不同廠家的產品在存儲容量、ROM介質、下載方式等方面有所區別。在進行機型選擇時應考慮:所選機型性能應符合方案總體要求,且留有余地,以備后期更新;開發方便,具有良好的開發工具和開發環境;市場貨源(包括外部擴展部、器件)在較長時間內充足;設計人員對機型的開發技術熟悉,以利于縮短開發周期。

2.確定所用傳感器

傳感器的選擇尤為重要,因為工業測控方案中所用各類傳感器至今還是影響方案性能的重要瓶頸。一個設計合理的工業測控方案常因傳感器的精度和環境條件制約而達不到預定的設計指標。

3.方案軟、硬件功能的劃分

單片機應用方案的重要特點是軟、硬件密切結合。根據應用方案的實際情況,全面考慮硬、軟件功能的劃分與配合。

硬件設計

方案總體方案確定之后,方案硬件的規模和軟件框架也隨之確定了。硬件和軟件是單片機應用方案的3個重要的密不可分的部分,硬件是基礎,軟件是關鍵。而這兩者又是可以互相轉化的。為了提高方案的可靠性,應在滿足應用方案精度和速度等要求的基礎上,盡可能把由硬件實現的功能改由軟件來完成。

在總體方案確定的硬件框架下,進一步細化方案硬件設計,對主機的資源按實際需要進行合理的分配,如I/O口、中斷源、定時/計數器等。對于外部擴展的功能器件需要認真、合理地選擇,確保其接口與主機接口一致,操作方便。主頻振蕩器和電源的選擇也應足夠重視,確保振蕩頻率滿足要求,方案電壓穩定。

硬件設計中另一個重要的問題就是如何提高方案抗干擾能力,提高硬件方案的可靠性。在方案需求分析中,對工作現場與環境已經作了認真、細致的分析,提出了具體而實際的要求。在硬件方案設計中應采取相應措施,配置各種抗干擾器件(如光電隔離、定時監視器、屏蔽等),使之融合在整個硬件設計中。對某些重要、關鍵的部分,應盡可能事先進行局部的模擬試驗,例如,對傳感器、放大器、A/G轉換、驅動能力等進行局部試驗,取得第一手技術資料。通過模擬試驗,分析并確定哪些工作可以由軟件來完成,哪些工作必須由硬件來實現等。

在方案器件選定的基礎上就可進行硬件方案電路原理圖的設計。根據電路原理圖,在面包板上搭出電路,配以部分軟件進行調試和運行,并隨時進行修改和補充。在此基礎上加工/塊或3塊印刷電路板,并焊上器件,載入設計好的軟件,進行綜合調試。在綜合調試中還會對硬件方案提出新的修改或補充。在綜合調試正確之后,再繪制正確的方案硬件電路原理圖和印刷電路圖,加工印刷電路板,并完成器件的安裝。

軟件設計

軟件設計包括制定程序總體方案,繪制程序流程圖,編制程序,以及程序的檢查、調試、修改等內容。

1.制定程序總體方案

程序的總體方案是指從方案的角度考慮程序的結構、數據形式和程序實現的方法和手段。在制定總體設計方案時,實際的單片機應用方案功能較為復雜,信息量較大,程序較長,這就要求設計者選用切合實際的程序設計方法。目前程序設計方法多種多樣,在單片機應用方案中較常用的程序設計方法有模塊化程序設計方法、子程序化程序設計方法、自頂向下逐步求精的程序設計方法、結構化程序設計方法等。

模塊化程序設計方法的中心思想是把一個多功能的、復雜的應用程序,按功能劃分成若干個相對獨立的程序模塊,各模塊可單獨設計、編程和調試,然后裝配起來進行聯調,最終成為一個完整的應用程序。

子程序化程序設計方法是把一個應用方案相對獨立的子模塊,以子程序的形式單獨編程、調試和查錯,然后通過子程序調用,組成完整的應用程序。這種程序設計構思清晰,便于調試、查錯、修改,而且組織靈活,是目前較多采用的一種程序設計方法。

自上而下逐步求精的程序設計方法,要求先從方案一級的主程序開始,集中解決全局問題,然后層層細化逐步求精,最終完成一個應用程序的設計。這種程序設計方法在一般的單片機應用程序中較多采用。

結構化程序設計方法是一種較理想的程序設計方法。它要求在編程過程中對程序進行適當的限制,特別是限制轉移、分支指令的使用,用于控制程序的復雜程度,使程序的上下文與執行流程保持一致。

2.繪制程序流程圖

不論采用何種程序設計方法,均應根據應用方案的總任務和控制對象的功能要求畫出程序的總體框圖,以描述程序的總體結構。在總體程序框圖的基礎上,設計者還需結合具體算法(或數學模型)細化程序流程圖。

3.編制程序

繪制程序流程圖后,整個程序的結構和思路已十分清楚。這時就可統籌考慮和安排一些帶有全局性的問題。例如,地址空間的分配、工作寄存器的安排、數據結構、端口地址和輸入/輸出格式,等等。在編制程序時應重視指令的合理選擇,特別是重要部分,涉及算法之類的程序段更要細心編寫。軟件的可靠性措施必須引起重視,例如,指令冗余、軟件陷阱等,可以提高軟件的抗干擾能力,防止軟件死機或程序跑飛。只要編程者既熟悉所選單片機的內部結構、功能和指令方案,又掌握編程的方法和技巧,依照程序流程圖編制出優質的應用軟件就不會十分困難。

4.程序的檢查、調試和修改

一個實際的應用程序編好以后,往往有不少潛在的隱患和錯誤。如果這些隱患和錯誤不加排除和修改,一旦錯誤在運行中出現,就有可能使程序陷入不可收拾的地步。因此,程序編好以后在聯機調試前進行靜態檢查是十分必要的。對編制好的程序進行靜態檢查,往往會加快整個程序的調試進程,靜態檢查對照程序流程圖自上而下進行,如發現錯誤,應及時糾正。

方案聯調

方案聯調是檢測所設計方案的正確性與可靠性的必要過程。單片機應用方案設計是一個相當復雜的勞動過程,在設計、制作中,難免存在一些局部性問題或錯誤。方案聯調可發現存在的問題和錯誤,以便及時地進行修改。調試與修改的過程可能要反復多次,最終使方案試運行成功,并達到設計要求。

對于一個復雜的方案,在進行方案聯調前宜進行分塊調試。在分塊調試時,先借助開發方案(或裝置)運行被調模塊的程序,觀察運行結果是否與預想的一致。若出現問題或錯誤,則借助開發方案(或裝置)的調試手段,找出錯誤原因或問題所在并排除之,再運行和排除,直到達到預想的結果為止。

按此步驟,將所有功能模塊逐個調試完畢。也可將已調試基本正確的模塊加入新的調試模塊共同調試,逐個擴大,直到全部調試完成。

在分塊調試完成的基礎上,準備進入方案聯調。先將在分塊調試時編寫的測試程序段除去,將各功能模塊連成一個整體,并整理成一個完整的應用方案軟件。有些外圍設備在現場,不便搬到實驗室調試,可采用模擬措施或者不連接上外圍設備進行運行調試,在調試有把握后再逐步加接。要著重調試的是,只有在整體條件下才會暴露出來的問題。

在一般調試正確之后,需要模擬各種條件和惡劣環境進行試運行。在此基礎上還需進行一定時間的全速運行,對整個方案進行觀察和測試,以驗證應用方案程序功能是否滿足原設計要求,是否達到預期的效果。在聯調過程中,主要是涉及軟件問題,但也可能牽涉到硬件設計問題,此時應從整個方案統籌考慮。

經過聯調之后,還需經過一段時間的烤機和試運行,因為有些隱藏較深的問題要在特定條件下才會暴露出來,所以烤機和試運行是必須的。烤機需在現場真實環境下進行。

方案運行與維護

方案硬件、軟件聯調通過后,就可以把軟件固化在EFROM中,開發過程即告結束。這時的方案只能作為樣機方案,給樣機方案加上外殼、面板,再配上完整的使用說明,就可成為正式的方案(或產品)。最后還需建立一套完整、健全的維護制度,以確保方案的正常工作。編寫、整理整套的技術文件資料,以便存檔。

【格亞信電子】是專業從事電子產品設計、電子方案開發、電子產品PCBA加工的深圳電子方案公司,主要設計電子產品包括工控、汽車、電源、通信、安防、醫療電子產品開發。

公司核心業務是提供以工控電子、汽車電子、醫療電子、安防電子、消費電子、通訊電子、電源電子等多領域的電子產品設計、方案開發及加工生產的一站式PCBA服務,為滿足不同客戶需求可提供中小批量PCBA加工。

公司產品涵蓋工業生產設備控制設備電子開發、汽車MCU電子控制系統方案設計、伺服控制板PCBA加工、數控機床主板PCBA加工,智能家居電子研發、3D打印機控制板PCBA加工等領域。業務流程包括電子方案開發設計、PCB生產、元器件采購、SMT貼片加工、樣機制作調試、PCBA中小批量加工生產、后期質保維護一站式PCBA加工服務。

http://www.jpauqs.live/

作者:單片機


Go To Top 回頂部
花花公子走势图