版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
PAGE學(xué)院:計(jì)算機(jī)科學(xué)技術(shù)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)(工)班級:姓名:學(xué)號:指導(dǎo)教師:微機(jī)原理與匯編語言課程設(shè)計(jì)任務(wù)書一、題目:電子表二、設(shè)計(jì)的目的1.掌握利用PC機(jī)的的中斷及中斷服務(wù)程序的編寫方法;2.掌握定時器/計(jì)數(shù)器8253的工作原理及編程方法。三、設(shè)計(jì)要求編寫程序,利用主機(jī)內(nèi)的8253-2的計(jì)數(shù)器0產(chǎn)生10m的方波輸出,此輸出送至IRQ0使8259A每10ms產(chǎn)生1次中斷,100次后秒加1,然后調(diào)整時、分、秒并在屏幕上顯示。程序從按下任意鍵開始顯示數(shù)據(jù)區(qū)存放的時間值,運(yùn)行中按下空格鍵即停止運(yùn)行,并返回DOS。要求每人獨(dú)立完成課程設(shè)計(jì)。四、設(shè)計(jì)內(nèi)容采用PC系列微機(jī)現(xiàn)有的硬件和軟件資源編寫匯編語言程序,在顯示器上顯示XX(時):XX(分):XX(秒),每秒鐘更新1次。五、課程設(shè)計(jì)工作量一般每人的程序量應(yīng)在100行有效程序行以上。不得抄襲,否則給不及格成績。六、課程設(shè)計(jì)工作計(jì)劃2011年6月27日1-2節(jié) 指導(dǎo)教師講課,學(xué)生準(zhǔn)備文獻(xiàn)資料;2011年6月28日~2011年7月01日 每人完成自己程序并能獨(dú)立演示;2011年7月01日下午 驗(yàn)收,學(xué)生撰寫課程設(shè)計(jì)報告。指導(dǎo)教師簽字:專業(yè)主任簽章:微機(jī)原理與匯編語言課程設(shè)計(jì)指導(dǎo)教師評語與成績指導(dǎo)教師評語:課程設(shè)計(jì)表現(xiàn)成績:課程設(shè)計(jì)驗(yàn)收成績:課程設(shè)計(jì)報告成績:課程設(shè)計(jì)總成績:指導(dǎo)教師簽字:2011年月日目錄第1章概述 11.1選題來源 11.2選題目的 11.3選題意義 11.4解決問題 11.5技術(shù)要求 2第2章總體方案設(shè)計(jì) 32.1硬件總體設(shè)計(jì) 32.2軟件總體設(shè)計(jì) 3第3章詳細(xì)設(shè)計(jì) 43.1硬件設(shè)計(jì) 43.1.1顯示模塊 43.1.2時鐘運(yùn)算模塊 43.1.3對時模塊 53.1.4設(shè)計(jì)電路圖 53.2軟件設(shè)計(jì) 73.2.1程序流程圖 7第4章調(diào)試與運(yùn)行結(jié)果說明 94.1試驗(yàn)結(jié)果 94.2分析 10課程設(shè)計(jì)總結(jié) 11謝啟 12參考文獻(xiàn) 13附錄 14PAGE13第1章概述1.1選題來源該課程設(shè)計(jì)是根據(jù)老師提供的三個題目選題:音樂演奏,電子琴,電子表。我選擇的是電子表1.2選題目的設(shè)計(jì)并實(shí)現(xiàn)一個可以顯示時間和日期的電子時鐘,可以用鍵盤控制。1.3選題意義課程設(shè)計(jì)是培養(yǎng)學(xué)生運(yùn)用有關(guān)課程的基礎(chǔ)理論和技能解決實(shí)際問題,進(jìn)一步提高學(xué)生本專業(yè)必要的基本技能、方法和創(chuàng)新能力的重要環(huán)節(jié)之一。通過課程設(shè)計(jì)使學(xué)生受到設(shè)計(jì)方法的初步訓(xùn)練,能用文字、圖形和現(xiàn)代設(shè)計(jì)方法簡要、系統(tǒng)、正確地表達(dá)設(shè)計(jì)成果。1.4解決問題電子表一般都有顯示時間和日期的功能,用匯編語言設(shè)計(jì)程序時,由于是在電腦上操作,因而不便于切換時間和日期模式,這時就需要設(shè)計(jì)一種方式,可以通過鍵盤來切換這種模式,從而達(dá)到設(shè)計(jì)任務(wù)所要求的內(nèi)容。 設(shè)計(jì)時間時,要設(shè)計(jì)時間的計(jì)數(shù)方式,并會循環(huán)運(yùn)行,符合日常的標(biāo)準(zhǔn)。而設(shè)計(jì)日期時,同樣要注意日期的計(jì)數(shù)與循環(huán)方式。 設(shè)計(jì)好時間和日期程序后,要把日期和時間值轉(zhuǎn)換成ASCII碼字符。這就需要設(shè)計(jì)轉(zhuǎn)換程序。1.5技術(shù)要求《微機(jī)接口課程設(shè)計(jì)》主要是訓(xùn)練學(xué)生綜合運(yùn)用學(xué)過的微機(jī)原理的軟件和硬件知識,獨(dú)立完成一個實(shí)際的微機(jī)應(yīng)用設(shè)計(jì)系統(tǒng),并在實(shí)驗(yàn)室實(shí)現(xiàn)。此次課設(shè)是對個人的程序設(shè)計(jì)方法和技能的基本訓(xùn)練,鞏固在課堂上學(xué)到的有關(guān)程序設(shè)計(jì)的基本知識和基本方法,為學(xué)習(xí)后繼的基礎(chǔ)課和專業(yè)課打下堅(jiān)實(shí)的基礎(chǔ)。課設(shè)所用的是匯編語言,它是一種機(jī)器語言,是計(jì)算機(jī)能提供的最快最有效的語言,也是能夠利用計(jì)算機(jī)所有硬件性能并能直接控制硬件的語言。實(shí)驗(yàn)不僅培養(yǎng)了實(shí)際動手能力,也進(jìn)一步學(xué)習(xí)了匯編語言的結(jié)構(gòu)和使用方法,提高了匯編語言的水平。第2章總體方案設(shè)計(jì)2.1硬件總體設(shè)計(jì)8259A的主要功能:(1)每片8259A可管理8級優(yōu)先級中斷源,通過開關(guān),最多可管理64級優(yōu)先權(quán)的中斷源。(2)對任何一個級別的中斷源都可單獨(dú)進(jìn)行屏蔽,使該級中斷請求暫時被掛起,直到取消屏蔽時為止。(3)能向CPU提供可編程的標(biāo)識碼。(4)具有多種中斷優(yōu)先權(quán)管理方式。有完全嵌套方式、自動循環(huán)方式、特殊循環(huán)方式、特殊屏蔽方式和查詢方式五種。這些管理方式均可通過程序動態(tài)地進(jìn)行變化。在本設(shè)計(jì)中用到了這四種功能,電子時鐘的靈活調(diào)時功能就是通過對級別的屏蔽或開啟來實(shí)現(xiàn)的。8255A的主要功能:可編程外設(shè)接口芯片可由程序改變其功能,通用性強(qiáng)、使用靈活。通過8255A,CPU可直接同外設(shè)相連接,其負(fù)責(zé)CPU和外設(shè)之間的數(shù)據(jù)傳送。8253的主要功能:可編程定時器/計(jì)數(shù)器,其定時與計(jì)數(shù)功能可由程序靈活地設(shè)定,設(shè)定后與CPU并行工作,不占用CPU的時間。通道2工作在3方式下,提供計(jì)算一秒的中斷請求信號。2.2軟件總體設(shè)計(jì)電子時鐘主要由顯示模塊、對時模塊和時鐘運(yùn)算模塊三大部分組成。其中對時模塊和時鐘運(yùn)算模塊要對時、分、秒的數(shù)值進(jìn)行操作,并且秒計(jì)算到60時,要自己清零并向分進(jìn)1;分計(jì)算到60時,要自己清零并向時進(jìn)1;時計(jì)算到24時,要清零。這樣,才能循環(huán)記時。第3章詳細(xì)設(shè)計(jì)3.1硬件設(shè)計(jì)3.1.1顯示模塊 利用數(shù)碼管的顯示功能來設(shè)計(jì)。數(shù)碼管是由八個條形發(fā)光二極管組成的,這些發(fā)光二極管的陰極是互相連接在一起的,所以稱為共陰極數(shù)碼管。通過在這八個發(fā)光二極管的陽極加+5V或0V的電壓使不同的二極管發(fā)光,形成不同的字符和數(shù)字。電子時鐘用到的是0到9十個數(shù)字,他們所對應(yīng)的字符表依次是3FH、06H、5BH、4FH、66H、6DH、7DH、07H、7FH、6FH。該模塊主要是將時鐘運(yùn)算模塊和對時模塊運(yùn)算出來并存放在內(nèi)存單元里的十六進(jìn)制表示的時位和分位數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制,并通過四個數(shù)碼管顯示出來。該模塊實(shí)現(xiàn)的硬件是TND86/88的LED-KEYBOARDUNIT。3.1.2時鐘運(yùn)算模塊該模塊的主要功能是對時、分、秒的運(yùn)算,并把運(yùn)算出的最終結(jié)果存到事先已經(jīng)開辟的內(nèi)存單元里,以便顯示模塊即時地顯示出來。該模塊可以細(xì)分為秒定時模塊和運(yùn)算模塊。秒定時模塊負(fù)責(zé)提供中斷信號,由于CPU運(yùn)算模塊中的指令消耗一定的時間,所以中斷信號最好通過硬件來實(shí)現(xiàn),可以選擇TND86/88實(shí)驗(yàn)箱中的8253定時/計(jì)數(shù)器來提供,但又因?yàn)?253所能提供的信號的周期時毫秒級的,因此必須通過軟件的方法在運(yùn)算模塊中設(shè)置一個統(tǒng)計(jì)中斷次數(shù)的變量,并且這一變量必須事先在內(nèi)存里開辟存儲單元。中斷信號是8253的通道2工作方式為方式3時,產(chǎn)生一個40ms的脈沖信號。運(yùn)算模塊負(fù)責(zé)時、分、秒的計(jì)算,該模塊主要通過8259的IRQ7號中斷來實(shí)現(xiàn),首先將秒定時模塊提供的中斷信號為8259的IRQ7中斷請求信號。但由于每40ms一次中斷請求。所以在中斷服務(wù)程序必須利用已申請內(nèi)存單元count來統(tǒng)計(jì)中斷請求的次數(shù),只有當(dāng)count的值為25時,才能讓秒單元內(nèi)的數(shù)值加1。另外,在中斷服務(wù)程序里,必須對秒、分和時的單元內(nèi)的數(shù)值進(jìn)行判斷,當(dāng)秒加到60時,分必須加1、秒清零;當(dāng)分加到60時,時加1、分清零。當(dāng)時加到24啊,直接清零。3.1.3對時模塊該模塊主要功能是修改時、分內(nèi)存單元的數(shù)值。在對時的時候,秒應(yīng)停止不變,并且在對分進(jìn)行調(diào)整的時,時單元內(nèi)的數(shù)值不變。由以上分析可見,對時、分的調(diào)整用兩個優(yōu)先級高于IRQ7的中斷來完成。因此,可以用8259的IRQ2中斷來實(shí)現(xiàn),兩個中斷源的中斷請求信號只需直接接在兩個按鍵即可起到對時作用。3.1.4設(shè)計(jì)電路圖電子時鐘的完整電路圖如下:3.2軟件設(shè)計(jì)3.2.1程序流程圖YesNoYesNoNoNoNoYes中斷服務(wù)程序IRQ7YesYesIRQ7中斷COUNT=25?S=S+1COUNT=0S=60?M=M+1S=0M=60?H=H+1M=0H=24?H=0IRETCOUNT=COUNT+1顯示模塊程序圖顯示模塊程序圖 時、分轉(zhuǎn)化為十進(jìn)制,存到內(nèi)存單元中計(jì)算時、分的各位數(shù)值在TABLE中對應(yīng)編碼時、分轉(zhuǎn)化為十進(jìn)制,存到內(nèi)存單元中計(jì)算時、分的各位數(shù)值在TABLE中對應(yīng)編碼結(jié)束開始依次在61H段輸出到LED顯示 YesYesYesYesIRQ6中斷M=M+1M=60?M=0IRET中斷服務(wù)程序IRQ6OFF=1?NoOFF=2?H=H+1H=24?YesH=0YesNoNoNoOFF=1?IRETOFF=0屏蔽IRQ6中斷,開IRQ2和IRQ7中斷OFF=3?中斷服務(wù)程序IRQ2IRQ2中斷OFF=OFF+1OFF=2?NoNoNoYesOFF=0屏蔽IRQ7中斷,開IRQ2和IRQ6中斷YesYes第4章調(diào)試與運(yùn)行結(jié)果說明4.1試驗(yàn)結(jié)果程序初始運(yùn)行界面圖1開始界面這時,開始根據(jù)提示輸入當(dāng)前時間,出現(xiàn)如下界面:圖2輸入時間后單擊回車鍵之后圖3運(yùn)行后4.2分析將編寫好的源程序輸入,編譯后出現(xiàn)很多錯誤,經(jīng)過反復(fù)修改直到程序運(yùn)行通過。將生成的可執(zhí)行程序裝入TND86/88的內(nèi)存里,在監(jiān)控狀態(tài)下運(yùn)行程序,可是數(shù)碼管顯示的數(shù)字并不與理論計(jì)算值相符合,并且顯示的數(shù)字不停地閃動,經(jīng)過反復(fù)分析源程序發(fā)現(xiàn)問題出現(xiàn)在內(nèi)存單元里時位和分位在轉(zhuǎn)化為十進(jìn)制時,存儲轉(zhuǎn)化的結(jié)果的地址空間的順序弄混了。數(shù)字閃動的原因應(yīng)該出在顯示子程序里,經(jīng)過分析問題出在顯示子程序里缺少延時程序。編寫延時子程序,并在顯示子程序調(diào)用它;編譯源程序,裝入生成的可執(zhí)行文件,并運(yùn)行。數(shù)碼管顯示的數(shù)字與理論值相符合,并能正常計(jì)時,但當(dāng)按動KK1+鍵時,卻不能啟動對時功能,按動KK2+時,也不能調(diào)時、調(diào)分。問題很可能出在兩鍵控制的中斷源上,檢查源程序也找不出錯誤,當(dāng)把IRQ5換成IRQ2后,在進(jìn)行調(diào)試,結(jié)果成功。課程設(shè)計(jì)總結(jié)1.實(shí)驗(yàn)過程中碰到了很多的難題和障礙,我認(rèn)識到平時基礎(chǔ)知識的重要性,只有能夠熟練的掌握才能在實(shí)驗(yàn)過程中得心應(yīng)手,否則一步錯則整個試驗(yàn)都會陷入困境,因而,嚴(yán)謹(jǐn)?shù)膽B(tài)度是試驗(yàn)成功的重要保障!2.通過這次課程設(shè)計(jì),使我對匯編語言有了較清楚的認(rèn)識,以前在看語言時,有好多地方不明白為什么這么寫,這樣寫有什么優(yōu)點(diǎn)。對于某些語言句子還不清楚是什么意思。經(jīng)過這次課程設(shè)計(jì),通過查閱資料和向同學(xué)請教,明白許多不清楚的地方,能夠用匯編語言編寫簡單的程序,內(nèi)心感到高興。3.有了這次課程設(shè)計(jì)的體驗(yàn),使我明白了書本上的知識是死的,必須會用,用到實(shí)踐中,它才算有用。平時上課的理論知識只是停留在理論的層面,只有通過了這樣的試驗(yàn)才能更好的體會到,做到了理論和實(shí)際的相結(jié)合,使理論知識的作用發(fā)揮出來。這次設(shè)計(jì)對我將來的畢業(yè)設(shè)計(jì)有很大啟示和幫助。4.在設(shè)計(jì)過程中,遇到很多問題,通過和同學(xué)的共同研究,解決這些問題。遇到問題時候一起探討,使我在這次設(shè)計(jì)中獲得的啟示。謝啟通過本次課程設(shè)計(jì)是深深的體會到了自學(xué)能力的重要性和獨(dú)立決絕問題的能力以及凝聚力的重要。在本次課程設(shè)計(jì)當(dāng)中我們遇到了很多困難,與此同時也得到了孫老師的鼓勵也幫助,這讓我們對自己更有信心,雖然最后我們的程序不是很完善,但是我們盡了自己最大的努力。同時在我們遇到困難時也得到了同學(xué)的幫助,雖然她們很忙,但是仍然耐心的幫助我們解決困難,在此我們要深深的感謝她們在為期一周的微機(jī)原理課程設(shè)計(jì)中,使我們接觸到了以前書本上所涉及不到的領(lǐng)域,讓我們感到新奇!在我們完成的功能模塊的背后都交織著一份辛苦與喜悅,而這份辛苦與喜悅卻離不開大家的幫助和支持,當(dāng)然我們最要感謝的人還有我們的孫老師,因?yàn)闊o論在我們什么時候遇到困難的時候,只要向老師求助,他都會在第一時間為我們解答。雖然我們做的不是很好,但是我們組的每一位成員都在課程設(shè)計(jì)中學(xué)到了知識,希望老師還會給予我們幫助與鼓勵。通過這半年的學(xué)習(xí),自己對這門學(xué)科有了進(jìn)一步的了解。因此,我要向老師表達(dá)我衷心的謝意。因?yàn)樗齻兪悄敲吹木ぞI(yè)業(yè)、認(rèn)真負(fù)責(zé)。不管我們的問題有多幼稚,老師都能耐心的回答,認(rèn)真輔導(dǎo)我們。在此,我再一次地感謝大家在課程設(shè)計(jì)期間的幫助和支持參考文獻(xiàn)[1]李芷.微機(jī)原理與接口技術(shù)[M].2002.[2]王愛英.計(jì)算機(jī)組成與結(jié)構(gòu)[M].北京:清華大學(xué)出版社.1995.[3]沈美明,溫冬蟬.IBM-PC匯編語言程序設(shè)計(jì)[M].清華大學(xué)出版社.2003.[4]董方武.微機(jī)接口技術(shù)[M].中國水利水電出版社.2001.[5]宋錦河.匯編語言程序設(shè)計(jì)[M].中國水利水電出版社.2001.[6]唐延鈴,工小剛.匯編語言程序設(shè)計(jì)[M].電子科技大學(xué).1998[7]王元珍,韓宗芬IBM-PC匯編語言程序設(shè)計(jì)[M].華中理工大學(xué)出版社.1996.[8]戴梅萼,史嘉權(quán).微型計(jì)算機(jī)技術(shù)與運(yùn)用[M].清華大學(xué)出版社2003.附錄程序清單:DATASEGMENTBUF1DB'THETIMEISNOW:$'BUF4DB'LILI$'BUF2DB10DB10DUP(?)COUNTDB18DATAENDSSTACKSEGMENTSTACKDB100DUP(?)STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK CURSORMACROROW,CLM MOVAH,02H MOVBH,0 MOVDH,ROW MOVDL,CLM INT10H ENDM WINMACROROWL,CLML,ROWR,CLMR,COLOR MOVAH,06H MOVAL,0 MOVCH,ROWL MOVCL,CLML MOVDH,ROWR MOVDL,CLMR MOVBH,COLOR INT10H ENDM ASCBCDMACROREG INCBX INCBX MOVREG,[BX] MOVCL,4 SHLREG,CL INCBX MOVAL,[BX] ANDAL,0FH ORREG ENDM BCDASCMACROREG INCBX INCBX MOVAL,REG MOVCL,4 SHRAL,CL ORAL,30H MOV[BX],AL INCBX MOVAL,REG ANDAL,0FH ORAL,30H MOV[BX],AL ENDM INCBCDMACROREG,COUNT MOVAL,REG INCAL DAA MOVREG,AL CMPAL,COUNT JNZDISPY MOVREG,0 ENDMSTRDSPYMACROADRS LEADX,ADRS MOVAH,9 INT21H ENDMCLOCKPROCFARSTART:PUSHDS MOVAX,0 PUSHAX MOVAX,DATA MOVDS,AX WIN0,0,24,79,7 WIN6,9,18,70
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年中國電磁線繞組線行業(yè)運(yùn)行狀況及投資發(fā)展前景預(yù)測報告
- 2024-2030年中國甲氨基蒽醌融資商業(yè)計(jì)劃書
- 智能旅游智能導(dǎo)覽系統(tǒng)開發(fā)合同
- 智能數(shù)據(jù)存儲服務(wù)合同
- 虛擬現(xiàn)實(shí)技術(shù)服務(wù)合同
- 環(huán)境監(jiān)測與污染治理技術(shù)服務(wù)合同
- 新能源汽車制造供應(yīng)合同
- 跨境電商信用服務(wù)合同
- 媒體合作協(xié)議
- 物聯(lián)網(wǎng)設(shè)備安全審計(jì)合同
- GB/T 44978-2024智慧城市基礎(chǔ)設(shè)施連接城市和城市群的快速智慧交通
- 中級計(jì)量經(jīng)濟(jì)學(xué)知到智慧樹章節(jié)測試課后答案2024年秋浙江工業(yè)大學(xué)
- 2024年保密工作履職報告
- MSOP(測量標(biāo)準(zhǔn)作業(yè)規(guī)范)測量SOP
- 生物工程論文 年產(chǎn)6萬噸11°P啤酒廠發(fā)酵車間工藝設(shè)計(jì)
- 通力電梯KCE電氣系統(tǒng)學(xué)習(xí)指南
- windows7 操作系統(tǒng)
- 鋼筋統(tǒng)計(jì)表(插圖有尺寸)
- 食品安全管理體系培訓(xùn)系列教材(共44頁).ppt
- 世界各地的新年習(xí)俗(課堂PPT)
- 生物礦化與仿生材料的研究現(xiàn)狀及展望
評論
0/150
提交評論