應(yīng)用系統(tǒng)的研制步驟和方法_第1頁
應(yīng)用系統(tǒng)的研制步驟和方法_第2頁
應(yīng)用系統(tǒng)的研制步驟和方法_第3頁
應(yīng)用系統(tǒng)的研制步驟和方法_第4頁
應(yīng)用系統(tǒng)的研制步驟和方法_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2 0 1 4單片機應(yīng)用系統(tǒng)的研制步驟和方法2015-10-14上海大學(xué)上海大學(xué)目錄 單片機應(yīng)用系統(tǒng)設(shè)計概論1 1 單片機應(yīng)用系統(tǒng)硬件設(shè)計2 2 單片機應(yīng)用系統(tǒng)軟件設(shè)計3 3上海大學(xué)上海大學(xué) 單片機應(yīng)用系統(tǒng)調(diào)試4 4上海大學(xué)上海大學(xué)單片機應(yīng)用系統(tǒng)設(shè)計概論單片機應(yīng)用系統(tǒng)設(shè)計概論 由于單片機應(yīng)用系統(tǒng)的多樣性和技術(shù)指標(biāo)不同,研制的方法、步驟不完全一樣。研制工作包括硬件和軟件兩個方面,硬件指單片機、外圍器件、I/O設(shè)備組成的機器,軟件是各種操作程序的總稱。硬件和軟件緊密配合、協(xié)調(diào)一致,才能組成一個高性能的應(yīng)用系統(tǒng)。Add your title硬件設(shè)計在線調(diào)試總體設(shè)計軟件設(shè)計產(chǎn)品化上海大學(xué)上海大學(xué)應(yīng)用系

2、統(tǒng)研制過程流程應(yīng)用系統(tǒng)研制過程流程 上海大學(xué)上海大學(xué)應(yīng)用系統(tǒng)的總體設(shè)計應(yīng)用系統(tǒng)的總體設(shè)計1 確定功能技術(shù)指標(biāo)確定功能技術(shù)指標(biāo) 單片機應(yīng)用系統(tǒng)的研制是從確定功能技術(shù)指標(biāo)開始的,它是系統(tǒng)設(shè)計的依據(jù)和出發(fā)點,也是決定產(chǎn)品前途的關(guān)鍵。2 機型和器件選擇機型和器件選擇 選擇單片機機型依據(jù)是市場貨源、單片機性能、開發(fā)工具和熟悉程度。根據(jù)技術(shù)指標(biāo),選擇合適本系統(tǒng)的單片機型號。接著再選擇合適的傳感器、執(zhí)行機構(gòu)和I/O設(shè)備。3 硬件和軟件功能劃分硬件和軟件功能劃分 系統(tǒng)硬件的配置和軟件的設(shè)計是緊密聯(lián)系的,有些功能可以由硬件實現(xiàn)也可以由軟件實現(xiàn),如系統(tǒng)日歷時鐘,鍵盤的掃描。對于生產(chǎn)批量大的產(chǎn)品,能由軟件實現(xiàn)的功能

3、盡量由軟件完成,以利簡化硬件結(jié)構(gòu),降低成本。仔細(xì)劃分好軟、硬件的功能。 上海大學(xué)上海大學(xué)應(yīng)用系統(tǒng)的硬件設(shè)計應(yīng)用系統(tǒng)的硬件設(shè)計 單片機應(yīng)用系統(tǒng)的硬件結(jié)構(gòu)根據(jù)系統(tǒng)對硬件的需求,可分為小系統(tǒng)、緊湊系統(tǒng)、大系統(tǒng)三種結(jié)構(gòu)模式。1、小系統(tǒng) 將程序存儲器和數(shù)據(jù)存儲器包含于單片機內(nèi),P0和P2口作為一般的I/0接口連接輸入/輸出設(shè)備或被控對象,這樣的單片機應(yīng)用系統(tǒng)的結(jié)構(gòu)稱為小系統(tǒng)。小系統(tǒng)模式是單片機應(yīng)用系統(tǒng)最常用的硬件結(jié)構(gòu)模式。上海大學(xué)上海大學(xué)2、大規(guī)模系統(tǒng) 系統(tǒng)中有大量的程序儲存器和數(shù)據(jù)存儲器在單片機外,P0和P2口作為系統(tǒng)擴展的外部地址總線和數(shù)據(jù)總線,這樣的單片機應(yīng)用系統(tǒng)稱為大規(guī)模系統(tǒng)。3、緊湊系統(tǒng) 系統(tǒng)

4、中有少量的數(shù)據(jù)儲存器或I/O接口在單片機外,P0作為系統(tǒng)擴展的外部地址總線和數(shù)據(jù)總線,而P2口的一部分作為地址總線,另一部作為一般的輸入輸出接口,這樣的單片機應(yīng)用系統(tǒng)稱為緊湊系統(tǒng)。上海大學(xué)上海大學(xué)應(yīng)用系統(tǒng)的軟件設(shè)計應(yīng)用系統(tǒng)的軟件設(shè)計單片機軟件研制過程流程圖單片機軟件研制過程流程圖上海大學(xué)上海大學(xué)應(yīng)用系統(tǒng)的軟件設(shè)計應(yīng)用系統(tǒng)的軟件設(shè)計1.首先根據(jù)總體設(shè)計的要求進行系統(tǒng)定義,即把軟件要完成工作劃分成一個個任務(wù)。2.根據(jù)軟件需要完成的各個任務(wù),確定整個軟件結(jié)構(gòu)。3.根據(jù)各任務(wù)的要求,建立相應(yīng)的數(shù)學(xué)模型,行程算法。4.根據(jù)軟件結(jié)構(gòu)和數(shù)學(xué)模型,畫出程序流程圖。5.根據(jù)程序流程圖編寫程序。6.對編寫的源程序

5、進行匯編、調(diào)試、修改。7.將調(diào)好的程序用編程器固化在程序存儲器中。上海大學(xué)上海大學(xué)在軟件設(shè)計中一般需考慮以下幾個方面:(1)根據(jù)要求確定軟件的具體任務(wù)細(xì)節(jié),然后確定合理的軟件結(jié)構(gòu)。一般系統(tǒng)軟件由主程序和若干個子程序及中斷服務(wù)程序組成,要確定各個中斷的優(yōu)先級。在子程序和中斷服務(wù)程序中,要考慮現(xiàn)場的保護和恢復(fù)以及它們和主程序之間的信息交換方法。(2)程序的結(jié)構(gòu)一般常用模塊化結(jié)構(gòu),即把監(jiān)控程序分解為若干個功能相對獨立的較小的程序模塊分別設(shè)計,以便于調(diào)試。具體設(shè)計時可采用自底向上或自頂向下的方法。(3)在程序設(shè)計完成后,利用相應(yīng)的開發(fā)工具和軟件進行程序的匯編(或編譯),生成程序的機器碼。 軟件結(jié)構(gòu)設(shè)計

6、軟件結(jié)構(gòu)設(shè)計上海大學(xué)上海大學(xué)軟件結(jié)構(gòu)設(shè)計軟件結(jié)構(gòu)設(shè)計 盡管單片機應(yīng)用系統(tǒng)中的程序是千差萬別的,可是整個軟件結(jié)構(gòu)基本上是相同的,整個軟件結(jié)構(gòu)主要有三部分組成。1.初始化程序:對單片機應(yīng)用系統(tǒng)的硬 件和軟件進行初始化。2.巡視程序:巡視各操作要求。3.處理程序:完成各事件所要求的操作。上海大學(xué)上海大學(xué) 軟件結(jié)構(gòu)設(shè)計軟件結(jié)構(gòu)設(shè)計(b) 中斷程序結(jié)構(gòu) (a) 主程序結(jié)構(gòu) 上海大學(xué)上海大學(xué) 系統(tǒng)的調(diào)試技術(shù)系統(tǒng)的調(diào)試技術(shù) 系統(tǒng)調(diào)試包括硬件調(diào)試、軟件調(diào)試和軟、硬件系統(tǒng)聯(lián)調(diào)。根據(jù)調(diào)試環(huán)境不同,系統(tǒng)調(diào)試又分為模擬調(diào)試與現(xiàn)場調(diào)試。各種調(diào)試所起的作用是不同的,它們所處的時間段也不一樣,不過它們的目的都是為了查出用戶

7、系統(tǒng)中存在的錯誤或缺陷。系統(tǒng)調(diào)試的一般過程如下圖。 上海大學(xué)上海大學(xué) 單片機應(yīng)用系統(tǒng)調(diào)試工具單片機應(yīng)用系統(tǒng)調(diào)試工具 當(dāng)用戶樣機完成硬件和軟件設(shè)計,全部元器件安裝完畢后,在用戶樣機的程序存儲器中放入編寫好的應(yīng)用程序,系統(tǒng)即可運行。但應(yīng)用程序運行一次性成功幾乎是不可能的,多少會存在一些軟件、硬件上的錯誤,需借助單片機的系統(tǒng)調(diào)試工具進行調(diào)試,發(fā)現(xiàn)錯誤并加以改正。最常用的調(diào)試工具有單片機開發(fā)系統(tǒng)、萬用表、邏輯筆、邏輯脈沖發(fā)生器與模擬信號發(fā)生器、示波器和邏輯分析儀等幾種。其中,萬用表、示波器及開發(fā)系統(tǒng)是最基本的、必備的調(diào)試工具。上海大學(xué)上海大學(xué) 單片機仿真開發(fā)系統(tǒng)簡介單片機仿真開發(fā)系統(tǒng)簡介 單片機只是一

8、個芯片,既沒有鍵盤,又沒有CRT、LED顯示器,無法進行軟件的開發(fā)(如編輯、匯編、調(diào)試程序等),必須借助某種開發(fā)工具(也稱為仿真開發(fā)系統(tǒng))所提供的開發(fā)手段。一般來說,仿真開發(fā)工具應(yīng)具有如下最基本功能:1)用戶樣機程序的輸入與修改;2)程序的運行、調(diào)試(單步運行、設(shè)置斷點運行)、排錯、狀態(tài)查詢等功能;3)用戶樣機硬件電路的診斷與檢查;4)有較全的開發(fā)軟件。用戶可用匯編語言或C語言編制應(yīng)用程序;由開發(fā)系統(tǒng)編譯連接生成目標(biāo)文件、可執(zhí)行文件。配有反匯編軟件,能將目標(biāo)程序轉(zhuǎn)換成匯編語言程序;有豐富的子程序可供用戶選擇調(diào)用;5)將調(diào)試正確的程序?qū)懭氲匠绦虼鎯ζ髦小?上海大學(xué)上海大學(xué)單片機仿真開發(fā)系統(tǒng)簡介單

9、片機仿真開發(fā)系統(tǒng)簡介通用機仿真開發(fā)系統(tǒng)目前國內(nèi)使用較多的仿真開發(fā)系統(tǒng)大致分為如下兩類:1)通用機仿真開發(fā)系統(tǒng))通用機仿真開發(fā)系統(tǒng) 目前設(shè)計者使用最多的一類開發(fā)裝置,是一種通過PC機的并行口、串行口或USB口,外加在線仿真器的仿真開發(fā)系統(tǒng),如下圖所示。上海大學(xué)上海大學(xué)單片機仿真開發(fā)系統(tǒng)簡介單片機仿真開發(fā)系統(tǒng)簡介2)軟件仿真開發(fā)工具)軟件仿真開發(fā)工具Proteus 它是一種完全用軟件手段對單片機應(yīng)用系統(tǒng)進行仿真開發(fā)的。軟件仿真開發(fā)工具與用戶樣機在硬件上無任何聯(lián)系。通常這種系統(tǒng)是由PC機上安裝仿真開發(fā)工具軟件構(gòu)成,可進行應(yīng)用系統(tǒng)的設(shè)計、仿真、開發(fā)與調(diào)試。 上海大學(xué)上海大學(xué) 盡管Proteus軟件具有

10、開發(fā)效率高,不需要附加的硬件開發(fā)裝置成本。但是軟件模擬器是使用純軟件來對用戶系統(tǒng)仿真,對硬件電路的實時性還不能完全準(zhǔn)確地模擬,不能進行用戶樣機硬件部分的診斷與實時在線仿真。因此,在系統(tǒng)開發(fā)中,一般是先用Proteus設(shè)計出系統(tǒng)的硬件電路,編寫程序,然后在Proteus環(huán)境下仿真調(diào)試通過。然后依照仿真的結(jié)果,完成實際硬件設(shè)計。再將仿真通過的程序燒錄到編程器中,然后安裝到用戶樣機硬件板上去觀察運行結(jié)果,如有問題,再連接硬件仿真器去分析、調(diào)試。 上海大學(xué)上海大學(xué) 硬件調(diào)試硬件調(diào)試 單片機應(yīng)用系統(tǒng)的軟硬件調(diào)試是分不開的,通常是先排除明顯的硬件故障后再和軟件結(jié)合起來進行調(diào)試。常見的硬件故障有邏輯錯誤、元

11、器件失效、可靠性差和電源故障等。 硬件調(diào)試可分靜態(tài)調(diào)試與動態(tài)調(diào)試兩步進行。其中,靜態(tài)調(diào)試是在用戶系統(tǒng)未工作時的一種硬件檢查;動態(tài)調(diào)試是在用戶系統(tǒng)工作的情況下發(fā)現(xiàn)和排除用戶系統(tǒng)硬件中存在的器件內(nèi)部故障、器件間連接邏輯錯誤等的一種硬件檢查。由于單片機應(yīng)用系統(tǒng)的硬件動態(tài)調(diào)試是在開發(fā)系統(tǒng)的支持下完成的,故又稱為聯(lián)機仿真或聯(lián)機調(diào)試。 上海大學(xué)上海大學(xué) 在進行硬件調(diào)試時先進行靜態(tài)調(diào)試,主要有以下幾個工作。 1.在樣機加電前根據(jù)原理圖和裝配圖仔細(xì)檢查線路,核對元器件的型號、規(guī)格和安裝是否正確。2.加電檢查各點電位是否正常3.借助仿真器進行聯(lián)機調(diào)試,分別測試擴展的RAM、I/O口、I/O設(shè)備、程序存儲器以及晶

12、振和復(fù)位電路,改正其中的錯誤。 上海大學(xué)上海大學(xué) 軟件調(diào)試軟件調(diào)試 軟件調(diào)試就是排查系統(tǒng)軟件中的錯誤。常見的軟件錯誤有程序失控、中斷錯誤(不響應(yīng)中斷或循環(huán)響應(yīng)中斷)、輸入/輸出錯誤和處理結(jié)果錯誤等類型。通常是把各個程序模塊分別進行調(diào)試,通過后再組合到一塊進行綜合調(diào)試。1) 先獨立后聯(lián)機從宏觀來說,單片機應(yīng)用系統(tǒng)中的軟件與硬件是密切相關(guān)、相輔相成的。通過對用戶程序的仔細(xì)分析,把與硬件無關(guān)的、功能相對獨立的程序段抽取出來,形成與硬件無關(guān)和依賴于硬件的兩大類用戶程序塊。這一劃分工作在軟件設(shè)計時就應(yīng)充分考慮。2) 先分塊后組合如但這兩部分程序仍較為龐大的話,常規(guī)的調(diào)試方法是分別對兩類程序塊進一步采用分

13、模塊調(diào)試,以提高軟件調(diào)試的有效性。 3) 先單步后連續(xù)調(diào)試好程序模塊的關(guān)鍵是實現(xiàn)對錯誤的正確定位。準(zhǔn)確發(fā)現(xiàn)程序(或硬件電路)中錯誤的最有效方法是采用單步加斷點運行方式調(diào)試程序。上海大學(xué)上海大學(xué)系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào) 系統(tǒng)聯(lián)調(diào)主要解決以下問題:(1) 軟、硬件能否按預(yù)定要求配合工作?如果不能,那么問題出在哪里?如何解決?(2) 系統(tǒng)運行中是否有潛在的設(shè)計時難以預(yù)料的錯誤?如硬件延時過長造成工作時序不符合要求,布線不合理造成有信號串?dāng)_等。(3) 系統(tǒng)的動態(tài)性能指標(biāo)(包括精度、速度參數(shù))是否滿足設(shè)計要求? 上海大學(xué)上海大學(xué) 現(xiàn)場調(diào)試現(xiàn)場調(diào)試 一般情況下,通過系統(tǒng)聯(lián)調(diào)后,用戶系統(tǒng)就可以按照設(shè)計目標(biāo)正常工作了

14、。但在某些情況下,由于用戶系統(tǒng)運行的環(huán)境較為復(fù)雜(如環(huán)境干擾較為嚴(yán)重、工作現(xiàn)場有腐蝕性氣體等),在實際現(xiàn)場工作之前,環(huán)境對系統(tǒng)的影響無法預(yù)料,只能通過現(xiàn)場運行調(diào)試來發(fā)現(xiàn)問題,找出相應(yīng)的解決方法;或者雖然已經(jīng)在系統(tǒng)設(shè)計時考慮到抗干擾的對策,但是否行之有效,還必須通過用戶系統(tǒng)在實際現(xiàn)場的運行來加以驗證。另外,有些用戶系統(tǒng)的調(diào)試是在用模擬設(shè)備代替實際監(jiān)測、控制對象的情況下進行的,這就更有必要進行現(xiàn)場調(diào)試,以檢驗用戶系統(tǒng)在實際工作環(huán)境中工作的正確性。上海大學(xué)上海大學(xué) 單片機應(yīng)用系統(tǒng)實例單片機應(yīng)用系統(tǒng)實例簡易數(shù)字電壓表的設(shè)計簡易數(shù)字電壓表的設(shè)計系統(tǒng)的功能要求系統(tǒng)的功能要求 簡易數(shù)字電壓表可以測量05 V

15、的8路輸入電壓值,并在四位LED數(shù)碼管上輪流顯示或單路選擇顯示。測量最小分辨率為0. 019 V,測量誤差約為士0.02 V。 系統(tǒng)的方案論證系統(tǒng)的方案論證按系統(tǒng)功能實現(xiàn)要求,決定控制系統(tǒng)采用AT89C52單片機,A/D轉(zhuǎn)換采用ADC0809。系統(tǒng)除能確保實現(xiàn)要求的功能外,還可以方便地進行8路其它A/D轉(zhuǎn)換量的測量、遠程測量結(jié)果傳送等擴展功能。數(shù)字電壓表系統(tǒng)設(shè)計方案框圖如圖9-7。上海大學(xué)上海大學(xué) 數(shù)字電壓表系統(tǒng)設(shè)計方案 上海大學(xué)上海大學(xué) 數(shù)字電壓表電路原理圖上海大學(xué)上海大學(xué) 系統(tǒng)的系統(tǒng)的硬件電路設(shè)計硬件電路設(shè)計 簡易數(shù)字電壓測量電路由A/D轉(zhuǎn)換、數(shù)據(jù)處理及顯示控制等組成。A/D轉(zhuǎn)換由集成電路

16、0809完成。0809具有8路模擬輸入端口,地址線(2325腳)可決定對哪一路模擬輸入作A/D轉(zhuǎn)換。單片機的P1、P3.0P3.3端口作為四位LED數(shù)碼管顯示控制。P3.5端口用作單路顯示/循環(huán)顯示轉(zhuǎn)換按鈕,P3.6端口用作單路顯示時選擇通道。P0端口作A/D轉(zhuǎn)換數(shù)據(jù)讀入用,P2端口用作0809的A/D轉(zhuǎn)換控制。 上海大學(xué)上海大學(xué)系統(tǒng)的軟件程序設(shè)計 1初始化程序 系統(tǒng)上電時,初始化程序?qū)?0H77H內(nèi)存單元清0,P2口置12主程序 在剛上電時,系統(tǒng)默認(rèn)為循環(huán)顯示8個通道的電壓值狀態(tài)當(dāng)進行一次測量后, 將顯示每一通道的A/D轉(zhuǎn)換值,每個通道的數(shù)據(jù)顯示時間為1s左右,主程序在調(diào)用顯示子程序和測試子

17、程序之間循環(huán)。3顯示子程序 顯示子程序采用動態(tài)掃描法實現(xiàn)四位數(shù)碼管的數(shù)值顯示。測量所得的A/D轉(zhuǎn)換數(shù)據(jù)放在70H77H內(nèi)存單元中,測量數(shù)據(jù)在顯示時需轉(zhuǎn)換成為十進制BCD碼放在78H7BH單元中,其中7BH存放通道標(biāo)志數(shù)。寄存器R3用作8路循環(huán)控制,R0用作顯示數(shù)據(jù)地址指針。4模/數(shù)轉(zhuǎn)換測量子程序 模/數(shù)轉(zhuǎn)換測量子程序用來控制對0809八路模擬輸入電壓的A/D轉(zhuǎn)換,并將對應(yīng)的數(shù)值移入70H77H內(nèi)存單元。其程序流程見圖(b)。 上海大學(xué)上海大學(xué)(a) 主程序流程圖 (b) A/D轉(zhuǎn)換流程圖 上海大學(xué)上海大學(xué) 系統(tǒng)的性能分析 1制作測試 程序經(jīng)編譯及仿真調(diào)試,同時進行硬件電路板的設(shè)計制作,程序固化后進行軟硬件聯(lián)調(diào),最后進行電壓的對比測

溫馨提示

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

最新文檔

評論

0/150

提交評論