版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第二章 微機應用系統(tǒng)設(shè)計方法,RETURN,2.2,2.3,2.4,2.1,2.1 應用系統(tǒng)設(shè)計的基本原則和要求,RETURN,一、操作性能要好 二、通用性好,便于擴展三、可靠性高 四、設(shè)計周期短,價格便宜,一、操作性能要好,RETURN,系統(tǒng)的人—機界面友好,操作方便、便于維護,開關(guān)不能太多,操作順序簡單。,配置什么樣的軟件和環(huán)境,降低對專業(yè)知識的要求提供自檢或診斷程序,及時排除故障。,操作臺便于操作人員工作,顯示
2、器顏色和諧等。,二、通用性好,便于擴展,RETURN,系統(tǒng)的通用性要好,在必要時能靈活地進行擴充。,要求:,盡可能標準化。,三、可靠性高,——最突出的和最重要的一個基本要求。,1.采用雙機系統(tǒng):用兩臺微型機組成核心控制器。,① 備份機 工作方式,② 主—從 工作方式,③ 雙工工 作方式,三、可靠性高,2.采用多機多級分散控制,把系統(tǒng)所有控制任務(wù)分散地由多臺微型機來承擔,再用一臺適當功能的微型機作為上一級的管理主機,對多
3、臺分散的下一級微型機進行監(jiān)督和管理。這就組成了一個兩級多機分散的應用系統(tǒng)。,RETURN,四、設(shè)計周期短,價格便宜,RETURN,除此之外,如精度、速度、重量、監(jiān)視手段、抗干擾能力等都是應考慮。,2.2 應用系統(tǒng)設(shè)計的基本內(nèi)容和步驟,RETURN,一、引入微型機的必要性分析,二、分析被控對象需求,三、選擇基本微機系統(tǒng),四、確定整個應用系統(tǒng)的方案,五、硬件和軟件的具體設(shè)計,六、調(diào)試,一、引入微型機的必要性分析,RETURN,估價成本
4、:經(jīng)濟效益、社會效益系統(tǒng)性能改善程度系統(tǒng)的通用性、可靠性、可維護性等,,二、分析被控對象需求,RETURN,被控對象工作過程分析明確微機功能應用系統(tǒng)的響應時間、系統(tǒng)精度、可靠性、安全性、可維護性、可操作性使用環(huán)境:電源穩(wěn)定性及干擾情況、溫度、濕度……,,三、選擇基本微機系統(tǒng),RETURN,4. 盡量選用有較多軟件支持的機型,1. 微處理器的字長,2. 微處理器的工作速度,3. 系統(tǒng)結(jié)構(gòu)對環(huán)境的適應性,考慮的依據(jù),
5、5. 其它要求:體積、重量、功耗、價格、安裝方式,四、確定整個應用系統(tǒng)的方案,RETURN,,,,中斷方式:效率較高,成本高。,定時方式:效率較低,成本低。,查詢方式:效率較低,速度較慢,但成本低。,4. 確定整個應用系統(tǒng)的大體結(jié)構(gòu),RETURN,注意,不要使用用戶程序占用基本微機系統(tǒng)的工作區(qū)。,五、硬件和軟件的具體設(shè)計,RETURN,五、硬件和軟件的具體設(shè)計,RETURN,1.首先根據(jù)系統(tǒng)框圖畫出控制流程圖。,2.再根據(jù)系統(tǒng)需要配備
6、的軟件情況,用高級語言或匯編 語言編制各用戶源程序。,4.一般可執(zhí)行文件需進行多次調(diào)試和查錯才能改正編程 中存在的邏輯錯誤。,五、 硬件和軟件的具體設(shè)計,RETURN,1.軟、硬聯(lián)系更加緊密。,2.研制手段和調(diào)試工具。,3.系統(tǒng)的設(shè)計周期可以大大縮短,一般硬件和軟件可以獨 立地并行進行。,六、調(diào)試,RETURN,1.實驗室聯(lián)調(diào),2.現(xiàn)場調(diào)試,3.鑒定或驗收,2.3 微機應用系統(tǒng)的軟件結(jié)構(gòu),RETURN,一、應用系統(tǒng)軟件的特點
7、與分類,RETURN,,既可以由硬件來實現(xiàn),,增加物理設(shè)備,也可以由軟件來完成,,系統(tǒng)的某些功能,軟件與硬件密不可分,緊密配合 。,軟件開發(fā)一次完成,長期運行。,增加程序的長度和復雜性,一、應用系統(tǒng)軟件的特點與分類,RETURN,,——整個計算機系統(tǒng)僅有一個程序在 運行,執(zhí)行一個任務(wù)的軟件結(jié)構(gòu),——計算機系統(tǒng)并行地運行著 幾個不同的程序,二、單任務(wù)結(jié)構(gòu)軟件,RETURN,1. 單任務(wù)查詢式結(jié)構(gòu),RETUR
8、N,——系統(tǒng)中只有一個程序,按照事先安排好的順序執(zhí)行。,(1)結(jié)構(gòu)簡單、功能確切、調(diào)試方便。,(2)適用:小型專用系統(tǒng) 規(guī)模較大、功能復雜系統(tǒng),單片機 智能化的測量儀表、家用電器,2. 單任務(wù)中斷式結(jié)構(gòu),RETURN,時間陷阱——由規(guī)定的時間定時來激活。,事件陷阱——由規(guī)定的事件來激活。,中斷服務(wù)程序的簡繁程度是根據(jù)系統(tǒng)的需要而設(shè)計的,為了能夠準確地激活它,在主程序中的適當位置上要設(shè)置
9、陷阱。,陷阱,2. 單任務(wù)中斷式結(jié)構(gòu),RETURN,分為:主程序 --初始化:系統(tǒng)參數(shù)、I/O、定時器 中斷處理子程序。,★ 準確記錄突發(fā)變化,且分辨出發(fā)生的時間差、先后順序。 ★中斷量參數(shù),以共享內(nèi)存參數(shù)區(qū)的方法來傳遞參數(shù) ★中斷處理簡化--縮短處理時間,提高事件發(fā)生時間的分辨率。,--開關(guān)量,3. 單任務(wù)軟件的開發(fā)環(huán)境,RETURN,計算機的外圍設(shè)備,支持開發(fā)環(huán)境的操作系統(tǒng),用于程序的
10、輸入、編輯和存儲的支持軟件,用于程序的編譯或匯編的軟件,用于連接目標模塊、生成下裝模塊的支持軟件,調(diào)試程序的支持硬件和軟件,1. 下裝,2. EPROM編程,三、通用的應用系統(tǒng)軟件結(jié)構(gòu),RETURN,過程數(shù)據(jù)的輸入與輸出 -數(shù)據(jù)采集、控制任務(wù)輸出,控制算法的實現(xiàn) -PID,實時數(shù)據(jù)的存儲管理,實時通信,人-機會話功能的實現(xiàn),其他功能模塊:圖形顯示、報警、歷史數(shù)據(jù)管理,1. 實時數(shù)據(jù)庫的存儲管理,RETURN,(1)實時數(shù)據(jù)庫,(2)
11、實時數(shù)據(jù)庫的結(jié)構(gòu),(3)實時數(shù)據(jù)庫的訪問和管理,(1)實時數(shù)據(jù)庫,RETURN,--設(shè)置一個公共的實時數(shù)據(jù)區(qū)。 (共享),過程物理量巡檢任務(wù)將數(shù)值周期地采集進來,對于采集到的數(shù)據(jù)需要進行各種處理,趨勢跟蹤以及控制調(diào)解等,在實時測控系統(tǒng)中,存在著大量的實時數(shù)據(jù)需要處理,(1)實時數(shù)據(jù)庫,RETURN,對應每一個測控點設(shè)置一項記錄,對應每一個記錄用一個二進制數(shù)設(shè)置記錄標識符ID,各個記錄排列順序,按ID大小順序排列,實時數(shù)據(jù)庫使用頻繁,每一
12、項定義要簡單。數(shù)據(jù)庫的結(jié)構(gòu)應簡單化,對其訪問方式應直接化,快速化,(2)實時數(shù)據(jù)庫的結(jié)構(gòu),RETURN,模擬量點比較長,可能達100個字節(jié)以上,開關(guān)量點比較短,可能只需60個字節(jié)左右,(2)實時數(shù)據(jù)庫的結(jié)構(gòu),RETURN,數(shù)據(jù)結(jié)構(gòu)的種類:①硬件支持的信號類型有:,② 中間結(jié)果,以便參與報警檢測和顯示,定義數(shù)據(jù)結(jié)構(gòu):,(3) 實時數(shù)據(jù)庫的訪問和管理,RETURN,在設(shè)計軟件時,即要考慮到實時數(shù)據(jù)庫的訪問速度,又要考慮到盡量簡化某些任務(wù)
13、的操作。,實時數(shù)據(jù)放在公共數(shù)據(jù)區(qū),任務(wù)程序要清楚實時數(shù)據(jù)庫的存儲結(jié)構(gòu),保持實時數(shù)據(jù)庫的指針。,以事件(信息)的形式向?qū)崟r數(shù)據(jù)庫管理任務(wù)發(fā)出請求。,--訪問頻度高,--簡化操作,2. 數(shù)據(jù)采集和控制輸出任務(wù),RETURN,(1)數(shù)據(jù)采集和控制輸出任務(wù)的功能,(2)對開關(guān)量輸入數(shù)據(jù)的處理,(3)對模擬量輸入數(shù)據(jù)的處理,(4)顯示程序的設(shè)計,(1)數(shù)據(jù)采集和控制輸出任務(wù)的功能,RETURN,主要功能模塊有:,① 對各個輸入點周期掃描,②
14、 對輸入信號進行濾波處理和消除尖峰處理,③ 對模擬信號進行工程值轉(zhuǎn)換,④ 檢測警報,⑤ 對事件進行中斷處理,⑥ 將輸出值轉(zhuǎn)換成硬件輸出值,⑦ 將輸出信號周期地輸出到控制通道,(2)對開關(guān)量輸入數(shù)據(jù)的處理,RETURN,每一次輸入操作,可以輸入8位或16位開關(guān)量狀態(tài),對開關(guān)量DI的操作典型過程如圖所示:,(3)對模擬量輸入數(shù)據(jù)的處理,RETURN,模擬量信號在輸入計算機以后,輸入任務(wù)要對其進行讀取,平滑濾波,尖峰抑制,工程
15、單位轉(zhuǎn)換,報警檢測等處理。,尖峰是指電信號中突然發(fā)生很大的變化,(3)對模擬量輸入數(shù)據(jù)的處理,RETURN,由于各種電器干擾或設(shè)備不穩(wěn),信號到達計算機時,不可避免地要引入一些微小的波動。有時,電源電壓的紋波也會在信號上產(chǎn)生一個周期的波動。,濾波的方法:算術(shù)平均值濾波, 中值濾波, 一階滯后濾波 ……,(4)顯示程序的設(shè)計,RETURN,人-機會話界面,包括:
16、窗口 菜單 現(xiàn)場狀態(tài)圖形畫面,系統(tǒng)分為兩層:人機會話層 測控層,在磁盤和顯示緩沖區(qū)之間直接進行讀寫的方法,采用直接讀寫顯示緩沖區(qū)的方法,即直接讀取欲被移動的顯示區(qū)的數(shù)據(jù),并將其直接寫入新的區(qū)域的方法。,2.4 高級語言和匯編語言的混合編程,RETURN,概述C語言程序?qū)R編語言程序的調(diào)用C語言程序調(diào)
17、用匯編程序?qū)嵗?匯編語言對C語言程序的調(diào)用 其他語言對匯編的調(diào)用,概述,RETURN,一般與控制端口有關(guān)的輸入輸出程序及執(zhí)行速度要求高的程序用匯編語言編寫,如數(shù)據(jù)采集、實時時鐘管理程序,主程序及數(shù)據(jù)處理 程序用高級語言編寫。 我們把這種高級語言和匯編語言的混合編程稱為混合語言?;旌险Z言只是一種程序接口技術(shù)。,高級語言與匯編語言程序的連接,在技術(shù)上有兩個問題:,1.高級語言的程序如何調(diào)用匯編語言程序。,2.高級語言程序和
18、匯編語言程序如何實現(xiàn)互相之間的通信 。,,C語言程序?qū)R編語言程序的調(diào)用,RETURN,命名原則 調(diào)用原則 參數(shù)傳遞原則,編寫C語言和匯編語言過程時,必須遵守三個原則(約定),1. C語言程序的接口處理,2. 匯編語言程序的接口處理,1. C語言程序的接口處理,RETURN,(1)命名原則,,編譯系統(tǒng)自動地把在程序中出現(xiàn)的變量名或函數(shù)名的前面加一個下劃線 ”_”,如將fact _fact。,C 語言源程序中
19、調(diào)用一個外部匯編過程中,則直接使用該過程名而不加下劃線。比如,在匯編語言程序中有一個被調(diào)用的過程名_demo,在C語言程序中可直接用demo( ) 對其產(chǎn)生調(diào)用。,,,C語言規(guī)定名稱的有效長度為8個字符(不包括下劃線),1. C語言程序的接口處理,RETURN,,extern語言的說明形式:,extern 返回值類型 名稱(參數(shù)類型表),返回值類型是對函數(shù)過程而言的。若是變量則指變量類型是C語言所允許的任何數(shù)據(jù)類型,默認
20、為int型。,,名稱是對應的函數(shù)過程名或變量名等,它應符合命名原則。,例:,extern short thing (int,short); extern power( ); extern para; ——外部變量說明,不需要括號和參數(shù)類型表。,(2)調(diào)用原則,1. C語言程序的接口處理,RETURN,(3)參數(shù)傳遞原則,若沒有參數(shù)傳遞,則外部說明和調(diào)用時都予以空缺。,如果參數(shù)是傳值傳送,可以
21、直接寫出實參。,地址傳送,則在extern說明中,將參數(shù)類型說明成指針型,并在放實參時給出參數(shù)的地址。,例,2. 匯編語言程序的接口處理,RETURN,1,為了與C語言命名原則相符,在定義和編寫匯編語言程序的被調(diào)用過程時,應以下劃線開頭,用PUBLIC(公共塊,可被其他模塊使用和訪問) 說明,過程名最好不要超過8個字符。 如數(shù)據(jù)被其他模塊使用,必須用PUBLIC說明。例: PUBLIC _fact 。,2,如果C
22、 語言程序以巨型(huge)、大型(large)或者中型(medium)存儲模式編譯,被C語言調(diào)用的匯編過程應說明成FAR ,例:_fact proc far 。 如C語言程序以小型(small)或者緊湊型(compact)存儲模式編譯,被調(diào)用的匯編過程應說明成NEAR。,2. 匯編語言程序的接口處理,RETURN,3,考慮調(diào)用約定,C語言程序向匯編過程傳送參數(shù)是通過堆棧進行的。,注意: C 語言參數(shù)堆棧順序與參數(shù)調(diào)用時參
23、數(shù)表中出現(xiàn)順序相反。第一個參數(shù)的地址最低,是最后壓入堆棧的,各種類型參數(shù)在堆棧中所占的字節(jié)數(shù)也不同的。如int 型占2個字節(jié), float 型占4個字節(jié)。(類型對應的字節(jié)數(shù)與機器有關(guān),使用時須十分注意)。,,如調(diào)用順序是fact(A、B), 則B先入棧而A在后。,2. 匯編語言程序的接口處理,RETURN,4,匯編過程的進入,匯編過程的進入一般以兩條指令開始,即 PUSH BP
24、 MOV BP,SP,BP是一個區(qū)域指針,用來訪問參數(shù)和局部數(shù)據(jù)。這些數(shù)據(jù)都存放在堆棧中,所以,BP 也成為一個指向堆棧中各元素的指針,正是這個BP成為了參數(shù)傳遞的關(guān)鍵。,,,2. 匯編語言程序的接口處理,RETURN,5,結(jié)果和值的返回,,在PC系列機上,當返回值的數(shù)據(jù)類型是簡單類型時,同時長度不超過4個字節(jié),約定一般為: 數(shù)據(jù)大小 返回值所放寄存器 1字節(jié)
25、 AL 2字節(jié) AX 3字節(jié) 高端地址(或段地址)在DX 低端地址(或位移量)在AX,,返回值超過4個字節(jié)時,C語言調(diào)用過程為返回值分配一個存儲空間,將地址放在寄存器DX:AX中。,2. 匯編語言程序的接口處理,RETURN,6,退出匯編程序,,在被C語言調(diào)用的匯編過程中用指令RET返回。而在BASIC,F(xiàn)ORTR
26、AN等其他語言中要求用指令RET n返回。因為C語言的調(diào)用程序會自動恢復堆棧。,,另外,如果C語言程序以small或compact模式編譯,其堆棧中的返回地址只占2個字節(jié)(NEAR)。如果C語言程序以huge、large或medium模式編譯,則返回地址中要占4個字節(jié)(FAR)。,2. 匯編語言程序的接口處理,RETURN,7,C語言參數(shù)傳遞方式是傳值,數(shù)組總是采用傳址方式。,,C語言調(diào)用匯編程序的步驟為:,,按約定編寫C語言
27、程序,編譯后得到目標文件,注意extern和參數(shù)的類型的使用。,按約定編寫并匯編語言源程序,得到重定位的目標文件(OBJ文件),注意下劃線,PUBLIC和BP的使用。,,將兩種語言程序的目標文件連接成一個可執(zhí)行的文件。,,運行該執(zhí)行文件。在連接之前,C語言程序和匯編語言程序都有各自的代碼段,數(shù)據(jù)段,他們是不相重合的,而連接之后,它們便合二為一。,2. 匯編語言程序的接口處理,RETURN,,兩個被連接的目標模塊中,總有一個應
28、當是起始執(zhí)行模塊。,,或者,在匯編程序中有起始模塊,調(diào)用C語言程序時,C語言程序本身不能自行運行,一般以C語言為主。,如果以C語言為主,C語言中應用main( )模塊,對匯編過程進行調(diào)用,而匯編模塊本身不能自行運行。,,如果兩個程序模塊都有起始模塊,在連接時會出現(xiàn)錯誤。,C語言程序調(diào)用匯編程序?qū)嵗?RETURN,例1. 用匯編過程完成Ax2B計算,由C語言程序?qū)⒔Y(jié)果輸出。,此即為C語言調(diào)用一個匯編程序,傳送兩個參數(shù)A和B,并由
29、匯編返回一個計算結(jié)果。程序清單如下:,/*C語言程序:CAC1.C*//*CAC1.C_MSC CALLS MASM routine*/extern int power2 (int,int);main( ){ printf(“3 times 2 to the power of 5 is %d\n”,power2(3,5));},C語言程序調(diào)用匯編程序?qū)嵗?RETURN,;匯編語言程序:CAA1.ASM;CAA1.
30、ASM-MASM routine called by msc. MODEL SMALL,. CODE PUBLIC _power2 _power proc near PUSH BP ; SAVE BP MOV BP, SP ; PIONT TO STACK
31、 MOV AX, [BP+4] ; LOAD ARG1 MOV CX, [BP+6] ; LOAD ARG2 SHL AX, CL ; CALCULATE POP BP ; RET
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機應用系統(tǒng)課程設(shè)計--密碼校驗程序
- 熱網(wǎng)微機監(jiān)控系統(tǒng)的設(shè)計與應用.pdf
- 微機電系統(tǒng)器件設(shè)計綜合與優(yōu)化方法研究.pdf
- 熱網(wǎng)微機監(jiān)控系統(tǒng)的設(shè)計與應用(1)
- 微機應用課程設(shè)計題目
- 微機應用課程設(shè)計題目
- 容錯理論和方法及其在微機聯(lián)鎖系統(tǒng)中的應用.pdf
- 6502電氣集中設(shè)備微機監(jiān)測系統(tǒng)設(shè)計及其應用
- 柔性機構(gòu)拓撲優(yōu)化方法及其在微機電系統(tǒng)中的應用.pdf
- 微機原理及應用課程設(shè)計
- 《微機原理與應用》課程設(shè)計
- 變電站微機五防系統(tǒng)應用
- 中庭火災微機監(jiān)測系統(tǒng)及應用.pdf
- 城市供水工程微機監(jiān)控系統(tǒng)方案設(shè)計及應用.pdf
- 微機原理課程設(shè)計--電機調(diào)速系統(tǒng)設(shè)計
- 微機原理及應用
- 微機原理及應用課程設(shè)計--汽車蓄電池電壓檢測系統(tǒng)
- 微機原理及應用課程設(shè)計--汽車蓄電池電壓檢測系統(tǒng)
- 微機課程設(shè)計---溫度控制系統(tǒng)
- 微機原理課程設(shè)計--- 溫度測控系統(tǒng)
評論
0/150
提交評論