freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

co測(cè)試儀軟件設(shè)計(jì)(參考版)

2024-09-06 08:44本頁(yè)面
  

【正文】 系統(tǒng)調(diào)試是指讓用戶系統(tǒng)的軟件在其硬件上運(yùn)行,進(jìn)行軟硬件聯(lián)合調(diào)試,從中發(fā)現(xiàn)硬件錯(cuò)誤或軟件錯(cuò)誤。逐個(gè)任務(wù)調(diào)試好以后,再使各個(gè)任務(wù)同時(shí)運(yùn)行,如果操作系統(tǒng)中沒(méi)有錯(cuò)誤,一般情況下系統(tǒng)就能正常運(yùn)轉(zhuǎn)。待全部完成后,應(yīng)反 復(fù)運(yùn)行多次,除了觀察穩(wěn)定性之外,還要觀察用戶系統(tǒng)的操作是否符合原始設(shè)計(jì)要求、安排的用戶操作是否合理等,必要時(shí)還要作適當(dāng)修正。若用戶系統(tǒng)是在開(kāi)發(fā)系統(tǒng)的監(jiān)控程序下運(yùn)行時(shí),還要考慮用戶緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。 各程序模塊通過(guò)后,可以把各功能塊聯(lián)合起來(lái)一起進(jìn)行整體程序綜合調(diào)試。通過(guò)檢測(cè),可以發(fā)現(xiàn)程序中的死循環(huán)錯(cuò)誤、機(jī)器碼錯(cuò)誤及轉(zhuǎn)移地址的錯(cuò)誤,同時(shí)也可以發(fā)現(xiàn)用戶系統(tǒng)中的硬件故障、軟件算法及硬件設(shè)計(jì)錯(cuò)誤。調(diào)試子程序時(shí),一定要符合現(xiàn)場(chǎng)環(huán)境,即入口條件和出口條件。如果采用實(shí)時(shí)多任務(wù)操作系統(tǒng),一般是逐個(gè)任務(wù),下面進(jìn)一步予以說(shuō)明。 軟件調(diào)試 軟件調(diào)試與所選用的軟件結(jié)構(gòu)和程序設(shè)計(jì)技術(shù)有關(guān)。根據(jù)調(diào)試環(huán)境不同,系統(tǒng)調(diào)試又分為模擬調(diào)試與現(xiàn)場(chǎng)調(diào)試。系統(tǒng)調(diào)試的目的是查出系統(tǒng)中硬件設(shè)計(jì)和軟件設(shè)計(jì)中存在的錯(cuò)誤及可能出現(xiàn)的不協(xié)調(diào)的問(wèn)題,以便修改設(shè)計(jì),最終使系統(tǒng)能正確地工作。 畢業(yè)設(shè)計(jì) 27 第 5 章 系統(tǒng)調(diào)試及仿真 單片機(jī)應(yīng)用系 統(tǒng)的調(diào)試是系統(tǒng)開(kāi)發(fā)的重要環(huán)節(jié)。 IAR CSPY 和 Keil uVision 等開(kāi)發(fā)工具的源層調(diào)試應(yīng)用特殊模型的 DLL 界面 提供有關(guān)元件庫(kù)的全部文件 [10]。 支持許多通用的微控制器 , 如 PIC, AVR, HC11 以及 8051。 PROSPICE 仿真器的一個(gè)擴(kuò)展 PROTEUS VSM: 便于包括所有相關(guān)的器件的基于微處理器設(shè)計(jì)的協(xié)同仿真。 結(jié)語(yǔ): Proteus 組合了高級(jí)原理布圖、混合模式 SPICE 仿真 , PCB 設(shè)計(jì)以及自動(dòng)布線來(lái)實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)系統(tǒng)??墒乖O(shè)計(jì)時(shí)間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險(xiǎn)。 隨著科技的發(fā)展, “ 計(jì)算機(jī)仿真技術(shù) ” 已成為許多設(shè)計(jì)部門重要的前期設(shè)計(jì)手段。 畢業(yè)設(shè)計(jì)是學(xué)生走向就業(yè)的重要實(shí)踐環(huán)節(jié)。 它的元器件、連接線路等卻和傳統(tǒng)的單片機(jī)實(shí)驗(yàn)硬件高度對(duì)應(yīng)。 畢業(yè)設(shè)計(jì) 26 PROTEUS 不僅可將許多單片機(jī)實(shí)例功能形象化,也可將許多單片機(jī)實(shí)例運(yùn)行過(guò)程形象化。 電路功能仿真 : 在 PROTEUS 繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件 HEX,可以在 PROTEUS 的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過(guò)程。 軟件仿真 : 支持當(dāng)前的主流單片機(jī),如 51 系列、 AVR 系列、 PIC12 系列、 PIC16 系列、PIC18 系列、 Z80 系列、 HC11 系列、 68000 系列等。 具有 3 大功能模塊 : (1)—個(gè)易用而又功能強(qiáng)大的 ISIS 原理布圖工具 ; (2)PROSPICE 混合模型 SPICE 仿真 ; (3)ARES PCB 設(shè)計(jì) 。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。 革命性的特點(diǎn) : (1)互動(dòng)的電路仿真 用戶甚至可以實(shí)時(shí)采用諸如 LED/LCD、鍵盤、 RS232 終端等動(dòng)態(tài)外設(shè)模型來(lái)對(duì)設(shè)計(jì)進(jìn)行交互仿真。 其功能特點(diǎn) 如下 : Proteus 軟件具有其它 EDA 工具軟件(例: multisim)的功能。 Proteus ISIS與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī) CPU的工作情況,也能仿真單片機(jī)外圍電路或沒(méi)有單片機(jī)參與的其它電路的工作情況。具體步驟如下: (1)假若 Keil與 Proteus ISIS均已正確安裝; (2)進(jìn)入 Keil開(kāi)發(fā)集成環(huán)境,創(chuàng)建一個(gè)新項(xiàng)目 (Project),并為該項(xiàng)目選定合適的單片機(jī) CPU器件(我選用的是 AT89C51)并為該項(xiàng)目加入 Keil源程序; (3)單擊“ Project菜單,在下拉菜單中點(diǎn)擊 Options for TargetTarget1”,在 Target按鈕中將晶振 頻率設(shè)為 ,點(diǎn)擊 Debug按鈕選中 Create HEX Fi,以便生成 HEX文件,最后將工程編譯,進(jìn)入調(diào)試狀態(tài),并運(yùn)行; (4)打開(kāi) ISIS,添加元件,繪制好電路圖待用,在 MCU芯片 VSM模型中,寫入 KEIL編譯調(diào)試后產(chǎn)生的 HEX文件,點(diǎn)擊運(yùn)行鍵,單片機(jī)應(yīng)用系統(tǒng)即可運(yùn)行。在這個(gè)過(guò)程中只需要將 Keil編譯產(chǎn)生的 HEX文件寫入 Proteus中的 MCU芯片中,然后在 Proteus中點(diǎn)擊運(yùn)行即可實(shí)現(xiàn)單片機(jī)的軟、硬件聯(lián)合仿真。其中注意在 Output子菜單中選擇 Create Hex Fi。打開(kāi) Keil uVision3一 Project—New project,彈出對(duì)話框,選擇單片機(jī)型號(hào)。 編譯過(guò)程中的信息將出現(xiàn)在輸出窗口中的 Build 頁(yè)中,如果源程序中有語(yǔ)法錯(cuò)誤,會(huì)有錯(cuò)誤報(bào)告出現(xiàn),雙擊該行,可以定位到出錯(cuò)的位置,對(duì)源程序反復(fù)修改之后,最終會(huì)得到如圖 46所示的結(jié)果,提示獲得了名為 的文件,該文件即可被編程器讀入并寫到芯片中,同時(shí)還產(chǎn)生了一些其它相關(guān)的文件,可被用于 Keil 的仿真與調(diào)試,這時(shí)可以進(jìn)入下一步調(diào)試的工作 [9]。選擇菜單 ProjectBuild target,對(duì)當(dāng)前工程進(jìn)行連接,如果當(dāng)前文件已修改,軟件會(huì)先對(duì)該文件進(jìn)行編譯,然后再連接以產(chǎn)生目標(biāo)代碼;如果選擇 Rebuild All targetfiles 將會(huì)對(duì)當(dāng)前工程中的所有文件重新進(jìn)行編譯然后再連接,確保最終生產(chǎn)的目標(biāo)代碼是最新的,而 Translate …. 項(xiàng)則僅對(duì)該文件進(jìn)行編譯,不進(jìn)行連接。 如圖 45所示: 圖 45 代碼生成控制 設(shè)置完成后按確認(rèn)返回主界面,工程文件建立、設(shè)置完畢。 Emphasis是選擇編譯優(yōu)先方式,第一項(xiàng)是代碼量?jī)?yōu)化(最終生成的代碼量小);第二項(xiàng)是速度優(yōu)先(最終生成的代碼速度快);第三項(xiàng)是缺省。此處可以不選,因?yàn)槲宜玫氖菂R編語(yǔ)言。 Listing 標(biāo)簽頁(yè)用于調(diào)整生成的列表文件選項(xiàng)。 如圖 44所示: 畢業(yè)設(shè)計(jì) 22 圖 44 對(duì)輸出進(jìn)行控制 工程設(shè)置對(duì)話框 中的其它各頁(yè)面與 C51 編譯選項(xiàng)、 A51 的匯編選項(xiàng)、 BL51 連接器的連接選項(xiàng)等用法有關(guān),這里均取默認(rèn)值,不作任何修改。按鈕“ Select Folder forobjects”是用來(lái)選擇最終的目標(biāo)文件所在的文件夾,默認(rèn)是與工程文件在同一個(gè)文件夾中。選中 Debug information 將會(huì)產(chǎn)生調(diào)試信息,這些信息用于調(diào)試,如果需要對(duì)程序進(jìn)行調(diào)試,應(yīng)當(dāng)選中該項(xiàng)。 Use onchip ROM 選擇項(xiàng),確認(rèn)是否僅使用片內(nèi) ROM(注意:選中該項(xiàng)并不會(huì)影響最終生成的目標(biāo)代碼量); Operating 項(xiàng)是操作系統(tǒng)選擇, Keil 提供了兩種操作系統(tǒng): Rtx tiny 和 Rtx full,關(guān)于操作系統(tǒng)是另外一個(gè)很大的話題了,通常我們不使用任何操作系統(tǒng),即使用該項(xiàng)的默認(rèn)值: None(不使用任何操作系統(tǒng)); Off Chip Code memory 用以確定系統(tǒng)擴(kuò)展 ROM 的地址范圍, OffChip xData memory 組用于確定系統(tǒng)擴(kuò)展 RAM 的地址范圍,這些選擇項(xiàng)必須根據(jù)所用硬件來(lái)決定,由于該例是單片應(yīng)用,未進(jìn)行任何擴(kuò)展,所以均不重新選擇,按默認(rèn)值設(shè)置。 如圖 43所示: 畢業(yè)設(shè)計(jì) 21 圖 43 對(duì)目標(biāo)進(jìn)行設(shè)置 Memory Model 用于設(shè)置 RAM 使用情況,有三個(gè)選擇項(xiàng), Small 是所有變量都在單片機(jī)的內(nèi)部 RAM 中; Compact 是可以使用一頁(yè)外部擴(kuò)展 RAM,而 Larget 則是可以使用全部外部的擴(kuò)展 RAM。 設(shè)置對(duì)話框中的 Target 頁(yè)面,后面的數(shù)值是晶振頻率值,默認(rèn)值是所選目標(biāo) CPU 的最高可用頻率值, 對(duì)于我們所選的 AT89C51 而言是 12M,該數(shù)值與最終產(chǎn)生的目標(biāo)代碼無(wú)關(guān),僅用于軟件模擬調(diào)試時(shí)顯示程序執(zhí)行時(shí)間。 工程的詳細(xì)設(shè)置 工程建立好以后,還要對(duì)工程進(jìn)行進(jìn)一 步的設(shè)置,以滿足要求。如圖 42所示: 畢業(yè)設(shè)計(jì) 20 圖 42 加入文件 雙擊 main. asm 文件,將文件加入項(xiàng)目,注意,在文件加入項(xiàng)目后,該對(duì)話框并不消失,等待繼續(xù)加入其它文件,但初學(xué)時(shí)常會(huì)誤認(rèn)為操作沒(méi)有成功而再次雙擊同一文件,這時(shí)會(huì)出現(xiàn) 一個(gè) 對(duì)話框,提示你所選文件已在列表中,此時(shí)應(yīng)點(diǎn)擊 “確定 ”,返回前一對(duì)話框,然后點(diǎn)擊 “Close”即可返回主界面,返回后,點(diǎn)擊 “Source Group 1”前的加號(hào),會(huì)發(fā)現(xiàn) main. asm 文件已在其中。點(diǎn)擊“保存”按鈕,出現(xiàn)第二個(gè)對(duì)話框 ,如圖 41所示 : 圖 41 選擇目標(biāo) CPU 這個(gè)對(duì)話框要求選擇目標(biāo) CPU(即你所用芯片的型號(hào)), Keil 支持的 CPU 很多,我們選擇 Atmel 公司的 89C51 芯片。 建立工程文件 在項(xiàng)目開(kāi)發(fā)中,并不是僅有一個(gè)源程序就行了,還要為這個(gè)項(xiàng)目選擇 CPU( Keil 支持?jǐn)?shù)百種 CPU,而這些 CPU 的特性并不完全相同),確定編譯、匯 編、連接的參數(shù),畢業(yè)設(shè)計(jì) 19 指定調(diào)試的方式,有一些項(xiàng)目還會(huì)有多個(gè)文件組成等,為管理和使用方便, Keil 使用工程( Project)這一概念,將這些參數(shù)設(shè)置和所需的所有文件都加在一個(gè)工程中,只能對(duì)工程而不能對(duì)單一的源程序進(jìn)行編譯(匯編)和連接等操作,下面我們就一步一步地來(lái)建立工程。 Keil 工程的建立 源文件的建立 首先啟動(dòng) Keil 軟件的集成開(kāi)發(fā)環(huán)境,使用菜單 “FileNew”或者點(diǎn)擊 工具欄的新建文件按鈕,即可在項(xiàng)目窗口的右側(cè)打開(kāi)一個(gè)新的文本編緝窗口,在該窗口中輸入?yún)R編語(yǔ)言源程序,保存該文件,注意必須加上擴(kuò)展名(匯編語(yǔ)言源程序一般用 asm 或 a51 為擴(kuò)展名),這里假定將文件保存為 main. asm 。掌握這一軟件的使用對(duì)于 使用 51系列 單片機(jī)的愛(ài)好者來(lái)說(shuō)是十分必要的,如果你使用 C 語(yǔ)言編程,那么 Keil 幾乎就是你的不二之選(目前在國(guó)內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用 C語(yǔ)言而僅用匯編語(yǔ)言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。 Keil 提供了包括 C 編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境( u Vision)將這些部份組合在一起。 把 低 三位的十六進(jìn)制轉(zhuǎn)換為十進(jìn)制 BCD 碼 : HBCD: MOV A,51H ; 將低三位數(shù)賦給 A MOV B,100 ; B 取值 100 DIV AB MOV 32H,A ; 將百位的 BCD 碼放在 32H MOV A,10 ; A 取值 10 XCH A,B ;交換 A,B DIV AB MOV 31H,A ; 將十位 BCD 碼放于 31H MOV 30H,B ;將個(gè)位 BCD 碼放于 30H RET 把高三位的十六進(jìn)制轉(zhuǎn)換為十進(jìn)制 BCD 碼 : HBCD1: MOV A,52H ;將高三位數(shù)賦給 A MOV B,100 ; B 取值 100 DIV AB MOV 35H,A ;將百位的 BCD 碼放在 35H MOV A,10 ; A 取值 10 XCH A,B ; 交換 A,B DIV AB MOV 34H,A ;將十位 BCD 碼放于 34H MOV 33H,B ;將個(gè)位 BCD 碼放于 33H RET 畢業(yè)設(shè)計(jì) 18 第 4 章 Keil 軟件的運(yùn)用 將匯編語(yǔ)言源程序要變?yōu)?CPU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。以下這兩段程序就是我所設(shè)計(jì)的轉(zhuǎn)換程序。顯示 3 位 CLR CLR CLR CLR ;關(guān)所有數(shù)碼管 MOV A,3DH MOV P1,A SETB ;置 高位 ACALL DELAY 。故本設(shè)計(jì)采用動(dòng)態(tài)顯示方式, LED 為共陽(yáng)極 [8]。靜態(tài)顯示時(shí), LED 的亮度高,容易控制,但消耗大,所需口線多。輸出一個(gè)段碼就可以控制 LED 顯示器的字型。 共陽(yáng)極:把發(fā)光二極管的陽(yáng)極連在一起構(gòu)成共陽(yáng)極。半導(dǎo)體數(shù)碼管將十位數(shù)分成七個(gè)字段,每段為一個(gè)發(fā)光二極管,其字形結(jié) 構(gòu)如上圖所示,選擇不同的字段發(fā)光,可顯示出不同的字型。在數(shù)字電路中常常要把數(shù)據(jù)或運(yùn)算結(jié)果通過(guò)半導(dǎo)體數(shù)碼管、液晶數(shù)碼和熒光數(shù)碼管,用十進(jìn)制數(shù)顯示出來(lái)。而各位的陰極分別由相應(yīng)的 I/O 口控制,實(shí)現(xiàn)各位的分時(shí)選通。并且由于各位由一個(gè) 8 位鎖存器控制段選線,故在同一時(shí)間內(nèi)每一位顯示的字符可以不同,這種方式占用鎖存器較多 。 LED 顯示器有靜態(tài)和動(dòng)態(tài)顯示兩種方式,靜態(tài)顯示是將共陰極聯(lián)到一起接地,每位的顯示段( adp)分別與一個(gè) 8 位的鎖存器輸出相連。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1