微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)_第1頁
微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)_第2頁
微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)_第3頁
微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)_第4頁
微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、-作者xxxx-日期xxxx微機(jī)接口電子表數(shù)字鐘課程設(shè)計(jì)【精品文檔】微機(jī)原理與接口技術(shù)課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱: 電子表設(shè)計(jì) 專 業(yè): 計(jì)算機(jī)原理與接口技術(shù) 班 級(jí): xxxxxxx 姓 名: XXX 學(xué) 號(hào): XXXXXXXXX 指導(dǎo)教師: XXXXXXXX 2014年 11 月 27 日目 錄摘要.2一、 設(shè)計(jì)目的及要求.3任務(wù).3功能. 3 .3 實(shí)驗(yàn)方式.3 1. 基本要求.3 設(shè)計(jì)所用元件.4二、 設(shè)計(jì)題目及思想.4設(shè)計(jì)原理.4主要模塊.5初始化.7.9 2.5硬件接線圖.11三、 調(diào)試結(jié)果. 13四、 課程設(shè)計(jì)總結(jié).16遇到問題及解決方案.16 4.2 課程設(shè)計(jì)心得體會(huì).16參考文獻(xiàn)附

2、錄摘要匯編語言是計(jì)算機(jī)能夠提供給用戶使用的最快而又最有效的語言, 也是能夠利用計(jì)算機(jī)所有硬件特性并能直接控制硬件的唯一語言。因而,對(duì)程序的空間和時(shí)間的要求很高的場合,匯編語言的應(yīng)用是必不可少的。至于很多需要直接控制 硬件的應(yīng)用場合,則更是非用匯編語言不可了。隨著科學(xué)技術(shù)迅速發(fā)展,理工科大學(xué)生不僅需要掌握計(jì)算機(jī)方面的基本理論知識(shí),而且還需要掌握基本的實(shí)驗(yàn)技 能及一定的科學(xué)研究能力。 通過課程設(shè)計(jì),使學(xué)生鞏固和加深微型計(jì)算機(jī)原理理論知識(shí), 通過實(shí)踐進(jìn)一步加強(qiáng)學(xué)生獨(dú)立分析問題和解決問題的能力、綜合設(shè)計(jì)及 創(chuàng)新能力的培養(yǎng),同時(shí)注意培養(yǎng)學(xué)生實(shí)事求是、嚴(yán)肅認(rèn)真的科學(xué)作風(fēng)和良好的實(shí)驗(yàn)習(xí)慣,為今后工作打下良好

3、的基礎(chǔ)。鑒于匯編語言的廣泛用途及其在當(dāng)代計(jì)算機(jī)界的重要作用,本人利用學(xué)的知 識(shí),在同學(xué)門的幫助下,花費(fèi)大量時(shí)間,完成了關(guān)于電子表的系統(tǒng)設(shè)計(jì)。這個(gè)系統(tǒng)是應(yīng)用于電腦中的小應(yīng)用程序,可是顯示電腦中的時(shí)間。很多地方都會(huì)有個(gè)時(shí)鐘顯示,其中大多是應(yīng)用了類似這樣的方法。關(guān)鍵詞:匯編語言微機(jī)原理接口技術(shù)時(shí)鐘顯示一、設(shè)計(jì)目的及要求11設(shè)計(jì)任務(wù): 隨著科學(xué)技術(shù)迅速發(fā)展,理工科大學(xué)生不僅需要掌握計(jì)算機(jī)方面的基本理論知識(shí),而且還需要掌握基本的實(shí)驗(yàn)技能及一定的科學(xué)研究能力。通過課程設(shè)計(jì),使學(xué)生鞏固和加深微型計(jì)算機(jī)原理理論知識(shí),通過實(shí)踐進(jìn)一步加強(qiáng)學(xué)生獨(dú)立分析問題和解決問題的能力、綜合設(shè)計(jì)及創(chuàng)新能力的培養(yǎng),同時(shí)注意培養(yǎng)學(xué)生

4、實(shí)事求是、嚴(yán)肅認(rèn)真的科學(xué)作風(fēng)和良好的實(shí)驗(yàn)習(xí)慣,為今后工作打下良好的基礎(chǔ)。計(jì)算機(jī)原理與接口課程課程設(shè)計(jì)結(jié)合教學(xué)內(nèi)容,從應(yīng)用的角度出發(fā),進(jìn)行三類課程設(shè)計(jì),分別分為:匯編語言程序設(shè)計(jì)、微機(jī)標(biāo)準(zhǔn)接口課程設(shè)計(jì)和接口技術(shù)課程設(shè)計(jì)。(1)通過設(shè)計(jì)電子表,掌握中斷的使用方法。 (2)掌握基本的顯存讀寫技術(shù)。 (3)學(xué)會(huì)在屏幕上以七段數(shù)碼管的形式顯示本機(jī)時(shí)間的方法。 (4)學(xué)會(huì)用匯編語言編寫一個(gè)完整的程序,提高自己的動(dòng)手操作能力。 (5)學(xué)習(xí)程序設(shè)計(jì)的基本思路和方法,培養(yǎng)分析問題、解決問題的能力。1.2 設(shè)計(jì)功能:1.電子表,具有時(shí)、分、秒24小時(shí)制的運(yùn)行,并可以在8位數(shù)碼管上顯示。2電子表具有啟動(dòng)鍵、停止鍵、

5、初始化、蜂鳴、按點(diǎn)報(bào)時(shí)、暫停跳轉(zhuǎn)CSU-CSU。1.3 課程設(shè)計(jì)方式與基本要求 實(shí)驗(yàn)方式:微機(jī)原理與接口技術(shù)課程設(shè)計(jì)共2周,要求學(xué)生做出設(shè)計(jì)方案(硬件線路圖、程序框圖)并提交指導(dǎo)教師檢查確認(rèn)。然后進(jìn)行硬件連接、軟件調(diào)試、得出結(jié)果,由指導(dǎo)教師檢查是否達(dá)到設(shè)計(jì)要求,最后撰寫報(bào)告。根據(jù)通信工程專業(yè)學(xué)生的實(shí)際情況,課程設(shè)計(jì)的指導(dǎo)思想是:對(duì)于學(xué)習(xí)成績好、動(dòng)手能力強(qiáng)的學(xué)生,讓他們有充分發(fā)揮的余地;對(duì)于大多數(shù)學(xué)生務(wù)必完成設(shè)計(jì)要求;對(duì)于少數(shù)學(xué)習(xí)稍差的學(xué)生只需完成基本要求?;谶@一原則給出了35個(gè)題目,每一個(gè)題目的大小、難易可以伸縮,由學(xué)生自選。 1.3.2 基本要求:電子表以時(shí)、分、秒的形式實(shí)時(shí)顯示當(dāng)前時(shí)間。

6、掌握 8255、8259、8253 芯片使用方法和編程方法,通過本次課程設(shè)計(jì),學(xué)以致用,進(jìn)一步理解所學(xué)的相關(guān)芯片的原理、內(nèi)部結(jié)構(gòu)、使用方法 等,學(xué)會(huì)相關(guān)芯片實(shí)際應(yīng)用及編程,系統(tǒng)中采用 8088 微處理器完成了電子鐘的小 系統(tǒng)的獨(dú)立設(shè)計(jì)。同時(shí)并了解綜合問題的程序設(shè)計(jì)掌握實(shí)時(shí)處理程序的編制和調(diào) 試方法,掌握一般的設(shè)計(jì)步驟和流程,使我們以后搞設(shè)計(jì)時(shí)邏輯更加清晰。1熟練掌握匯編語言的程序設(shè)計(jì);2 熟練掌握各種編程接口芯片的編程應(yīng)用3.通過實(shí)驗(yàn)方法掌握各種電路綜合分析與設(shè)計(jì)方法。 設(shè)計(jì)所用元件設(shè)備是武漢恒科電子教學(xué)儀器有限公司的超想3000TB綜合實(shí)驗(yàn)/仿真系統(tǒng)。配合PC機(jī)構(gòu)成實(shí)驗(yàn)環(huán)境。8253 定時(shí)器

7、:用于產(chǎn)生秒脈沖,其輸出信號(hào)可作為中斷請(qǐng)示信號(hào)送 IRQ2。 8279 接口芯片:實(shí)現(xiàn)鍵盤輸入和顯示輸出。 8259 中斷控制器:用于產(chǎn)生中斷。8255 并行控制器:觸發(fā)LED燈閃爍和蜂鳴器揚(yáng)聲。數(shù)碼管:六個(gè) LED 用于顯示時(shí):分:秒值。發(fā)光二極管:閃爍報(bào)時(shí)。蜂鳴器:揚(yáng)聲報(bào)時(shí)。二、 設(shè)計(jì)題目及思想2.1 設(shè)計(jì)原理:計(jì)算機(jī)原理與接口技術(shù)是通信工程專業(yè)的一門專業(yè)基礎(chǔ)課程,學(xué)生需要掌握RAM擴(kuò)充、8253計(jì)數(shù)器/定時(shí)器、8255并行口、8251串行口、8259中斷控制器、D/A數(shù)模轉(zhuǎn)換、A/D模數(shù)轉(zhuǎn)換、DMA、LED顯示等各個(gè)器件的性能和使用方法。課程設(shè)計(jì)的目地是綜合這些基礎(chǔ)知識(shí),就具體問題讓學(xué)生

8、做出軟、硬件解決方案并付諸實(shí)施,以培養(yǎng)解決實(shí)際問題的能力。本程序的主要設(shè)計(jì)原理是用主程序完成鍵盤按鍵的掃描,實(shí)現(xiàn)計(jì)時(shí)結(jié)果的數(shù)碼管顯示,實(shí)現(xiàn)秒與分之間的轉(zhuǎn)換。通過判斷鍵盤按鍵調(diào)用相應(yīng)功能程序段以實(shí)現(xiàn)相應(yīng)功能,即實(shí)現(xiàn)了啟動(dòng)、暫停、復(fù)位功能,以及通過鍵盤進(jìn)行十分、分、十秒、秒時(shí)間的手動(dòng)設(shè)置功能。利用8253的定時(shí)器功能。8253的四個(gè)端口地址為48H,49H,4AH,4BH,本實(shí)驗(yàn)采用8253的通道2,工作在方式3(方波發(fā)生器方式)輸入CLK2為1MHZ。先給8253的初始值0C350H,循環(huán)記數(shù)。即一次記數(shù)完后,自動(dòng)裝入初始值。輸出OUT2作為8259的輸入脈沖。8259有兩個(gè)口地址,本實(shí)驗(yàn)為20

9、H和21H,其中20H用來寫ICW1,21H用來寫ICW2、ICW4,本實(shí)驗(yàn)中8259為單片,邊沿觸發(fā),采用3號(hào)中斷源,即IR3和8253輸出口OUT2相連,每過1/20秒接收到一個(gè)中斷,向8259發(fā)出中斷請(qǐng)求信號(hào),如果電平信號(hào)不符合要求,則自動(dòng)轉(zhuǎn)到7號(hào)中斷,顯示ERR,CPU響應(yīng)后,在中斷處理程序中,對(duì)中斷次數(shù)進(jìn)行記數(shù),記滿20次,把時(shí)間緩沖區(qū)中的時(shí)間加1,并將其輸入到顯示緩沖區(qū),以便顯示器顯示更新后的時(shí)間。計(jì)數(shù)初值的計(jì)算:1/1000000*X=1/20 X=50000D=0C350H(用1MHZ信號(hào)產(chǎn)生1/20秒方波)。 主要模塊 系統(tǒng)各個(gè)模塊設(shè)計(jì) 1、 系統(tǒng)總體設(shè)計(jì) 本系統(tǒng)設(shè)計(jì)的電子鐘

10、以 8088 微處理器作為 CPU, 8253 做定時(shí)計(jì)數(shù)器產(chǎn)生時(shí) 用 鐘頻率,8279 做可編程并行接口顯示時(shí)鐘和鍵盤電路,8259 做中斷控制器產(chǎn)生中 斷。在此系統(tǒng)中,8253 的功能是定時(shí),接入 8253 的 CLK 信號(hào)為周期性時(shí)鐘信號(hào)。 8253 采用計(jì)數(shù)器 0,工作于方式 2,使 8253 的 OUT0 端輸出周期性的負(fù)脈沖信號(hào)。 即每隔 20ms, 8253 的 OUT0 端就會(huì)輸出一個(gè)負(fù)脈沖的信號(hào), 此信號(hào)接 8259 的 IR2, 當(dāng)中斷到 50 次數(shù)后,CPU 即處理,使液晶顯示器上的時(shí)間發(fā)生變化。8255接受CS片選信號(hào),計(jì)時(shí)到點(diǎn)數(shù)產(chǎn)生輸出。程序由以下模塊組成:系統(tǒng)共有

11、5 個(gè)功能模塊,分別為,主控模塊,顯示模塊,定時(shí)模塊,并行接口模塊,中斷模塊。2、主控模塊 主控模塊是系的核心模塊,對(duì) 8253、8279 進(jìn)行初始化,設(shè)置中斷向量,掃描 鍵盤根據(jù)按鍵值作相應(yīng)的處理。主要由軟件實(shí)現(xiàn)。它的主要功能是調(diào)用其它模塊 對(duì)系統(tǒng)工作進(jìn)行協(xié)調(diào),它的主要功能是讀小鍵盤輸入鍵值并執(zhí)行要做的工作,如 果鍵值為 C 則將顯示初始值 00:00:00 置入顯示緩沖,并調(diào)用顯示模塊顯示。如 果鍵值為 G 則開中斷, (中斷程序?yàn)槊胱畹臀患右唬?。如果鍵值為 D 則關(guān)中斷,停 止動(dòng)態(tài)顯示。如健值為 P 則連續(xù)六次調(diào)用小鍵盤模塊,將鍵值依次存入顯示緩沖。 并調(diào)用顯示模塊顯示。如果健值為 E

12、,則終止程序,返回 DOS。3. 定時(shí)模塊 定時(shí)模塊是為 8259 提供中斷請(qǐng)求信號(hào)的。由一片 8253 實(shí)現(xiàn),選用定時(shí)器 0#, 工作在方式 3,由于時(shí)鐘應(yīng)該 1 秒走動(dòng)一次,所以輸出值應(yīng)為 1S,其輸出信號(hào)可作 為 8259 的中斷請(qǐng)求信號(hào)。4. 中斷處理模塊 中斷模塊實(shí)現(xiàn)動(dòng)態(tài)顯示的,硬件為一片 8259,由于中斷請(qǐng)求信號(hào)為每秒一次, 中斷程序該為時(shí)間按秒增加,并顯示,只要開中斷,便可實(shí)現(xiàn)每秒顯示時(shí)間增加一 秒,從而達(dá)到動(dòng)態(tài)顯示的效果。5 . 并行模塊并行模塊是8255是數(shù)據(jù)在多根傳輸線上一次以8位為單位進(jìn)行傳輸。8255由數(shù)據(jù)總線緩沖器,讀/寫控制邏輯、A組和B 組控制電路以及3個(gè)數(shù)據(jù)端

13、口(A 口、B 口和C口)等組成。6. 顯示模塊 顯示模塊是將顯示緩沖區(qū)的數(shù)值送到 LED 顯示的功能模塊,顯示緩沖區(qū)是由六 個(gè)字節(jié)構(gòu)成,分別保存小時(shí)的高位和低位,分鐘的高位和低位,秒鐘的高位和低位。 硬件上由六個(gè) LED 構(gòu)成,軟件上由掃描顯示的方法實(shí)現(xiàn)。2.3 芯片初始化 8253 A既可作定時(shí)器又可作計(jì)數(shù)器: (1) 計(jì)數(shù): 計(jì)數(shù)器裝入初值后,當(dāng)GATE為高電平時(shí),可用外部事件作為CLK 脈沖對(duì)計(jì)數(shù)值進(jìn)行減1 計(jì)數(shù),每來一個(gè)脈沖減1,當(dāng)計(jì)數(shù)值減至0時(shí),由OUT 端輸出一個(gè)標(biāo)志信號(hào)。 (2) 定時(shí): 計(jì)數(shù)器裝入初值后,當(dāng)GATE為高電平時(shí),由CLK 脈沖觸發(fā)開始自動(dòng)計(jì)數(shù),當(dāng)計(jì)數(shù)到零時(shí),發(fā)計(jì)

14、數(shù)結(jié)束定時(shí)信號(hào)。 除上述典型應(yīng)用外,8253A還可作頻率發(fā)生器、分頻器、實(shí)時(shí)鐘、單脈沖發(fā)生器等。8253A控制字76543210 00 選計(jì)數(shù)器0 數(shù)制控制:0 = 二進(jìn)制,1= BCD 01 選計(jì)數(shù)器1 10 選計(jì)數(shù)器2 工作方式選擇:000 方式0 11 非法 001 方式1 10 方式2 00 計(jì)數(shù)器鎖存命令 11 方式3 01 只讀/寫低8位,高8位自動(dòng)置0 100 方式4 10 只讀/寫高8位,低8位自動(dòng)置0 101 方式5 11 先寫低8位,后寫高8位 8259A編程及初始化 寫初始化命令字寫初始化命令字ICW1(A0=0),以確定中斷請(qǐng)求信號(hào)類型,清除中斷屏蔽寄存器,中斷優(yōu)先級(jí)排

15、隊(duì)和確定系統(tǒng)用單片還是多片。 中斷優(yōu)先級(jí)排隊(duì)和確定系統(tǒng)用單片還是多片。A7A6A51 7 6 5 4 3 2 1 0 0=不需寫ICW4;1=需要寫ICW4 0=多片8259級(jí)連;1=只一片8259 0=中斷向量地址間距8;1=地址間距4(8088模式下為0) 0=上升沿觸發(fā);1=高電平觸發(fā) 為1,ICW1標(biāo)志位 中斷向量A7,A6,A5位(8088模式下為000)3. 8279顯示接口8279A的控制命令 (1) 鍵盤顯示器方式設(shè)置命令 * RESET后,設(shè)定為該種方式。 (2) 掃描頻率控制命令4.8255并行8255A控制字 (1) 方式選擇控制字7 6 5 4 3 2 1 0 PC30

16、:1=輸入, 0=輸出 PB口: 1=輸入,0=輸出 B組 方式選擇:0=方式0,1=方式1 PC74:1=輸入, 0=輸出 PA口:1=輸入,0=輸出 方式選擇:00=方式0 A組 01=方式1 01=方式1 01=方式2 方式標(biāo)志:1=有效 程序流程圖開中斷是否IRQ3關(guān)中斷中斷次數(shù)+1中斷次數(shù)20?開中斷,讀中斷把DATAPORT存放的數(shù)碼管對(duì)應(yīng)的狀態(tài)顯示到數(shù)碼管是否=59秒秒數(shù)+1秒=00是否=59分分?jǐn)?shù)+1分=00是否=24時(shí)時(shí)數(shù)+1時(shí)=00在DATA2中,通過將DATA2起始地址加上當(dāng)位數(shù)碼管數(shù)字,找到對(duì)應(yīng)的地址,取出對(duì)應(yīng)的值放到05200527H地址中數(shù)碼管狀態(tài)數(shù)據(jù)庫初始化827

17、9初始化8253初始化放初始值0C350H8259初始化允許IRQ3,IRQ7中斷8255初始化延時(shí)59分鐘燈全亮延時(shí)1分鐘燈閃爍,蜂鳴器揚(yáng)聲實(shí)驗(yàn)線路連接1.8253A芯片的CLK2引出插孔連分頻輸出插孔T1(1MHZ)。2. 8259A的IRQ3插孔和8253A的OUT2插孔相連。3.將8279接口模塊上的插座DU(JB51)(a-h)用8芯線連接至數(shù)碼管模塊插座DU (a-h),8279接口模塊上插座BIT(JB53)連接至數(shù)碼管模塊插座BIT。4.8255 的片選CS插孔和8253A的Y2插孔相連,PC0-7和發(fā)光二極管相連,PC0和蜂鳴器相連。5.1MHz和開關(guān)K1 相連,開關(guān)K2 和

18、8259A 的IR7相連。三、 調(diào)試結(jié)果打開匯編軟件DVCC實(shí)驗(yàn)系統(tǒng),設(shè)置正確的接口并且聯(lián)機(jī)進(jìn)入程序匯編界面。按照電子表設(shè)計(jì)的硬件把線路一一連接正確。8253計(jì)數(shù)器接線情況8255并行接口接線情況8259單級(jí)中斷接線情況數(shù)碼管位選與段選接線情況K開關(guān)接線情況按照正確接線之后,再把程序通過DVCC匯編寫進(jìn)去,編譯再次鏈接,然后調(diào)試無誤,點(diǎn)擊運(yùn)行。數(shù)碼管會(huì)顯示初始時(shí)間00-59-40,8個(gè)發(fā)光二極管保持常亮,然后時(shí)間開始往下運(yùn)行,到01-00-00時(shí),發(fā)光二極管同時(shí)閃爍并且蜂鳴器揚(yáng)聲,該狀態(tài)持續(xù)一分鐘后自動(dòng)停止;此外,撥動(dòng)K 開關(guān),會(huì)調(diào)出CSUCSU,并且時(shí)間暫停,重新?lián)芑厝?,則繼續(xù)運(yùn)行時(shí)間。程序

19、正確無誤,實(shí)驗(yàn)效果良好,需要多次在不同的機(jī)子嘗試。四、 課程設(shè)計(jì)總結(jié)遇到問題及解決方案在設(shè)計(jì)中遇到不少的難題:在一開始按照指導(dǎo)書接線后沒有得到相應(yīng)的效果讓我十分的疑惑,也認(rèn)真檢查了硬件的接線線路,后來得知是不一定每一個(gè)的儀器都能順利與主機(jī)鏈接上,后來經(jīng)過多次的多部機(jī)子調(diào)試后得到能成功運(yùn)行代碼的平臺(tái)。在改進(jìn)設(shè)計(jì)方案中,考慮過加入數(shù)字鍵盤進(jìn)行時(shí)間校對(duì),但從儀器的內(nèi)部接線方法上我暫時(shí)得不到可行的計(jì)劃,或許鍵盤確實(shí)能實(shí)現(xiàn)時(shí)間的校對(duì);此外,我發(fā)現(xiàn)8279有RESET的功能,不過從電路原理圖上找不到接線,沒法簡單得實(shí)現(xiàn)時(shí)間重置。為了解決時(shí)間暫停,我想到簡單的硬件操作,就是直接給脈沖接上低電平,使8253A

20、的計(jì)數(shù)功能無法繼續(xù)進(jìn)行,當(dāng)脈沖接回高電平則繼續(xù)計(jì)數(shù)。當(dāng)數(shù)碼管暫停后,為了讓效果更好,我加入了IRQ7中斷,本來該中斷是觸發(fā)錯(cuò)誤電平,數(shù)碼管顯示Err,然后我把中斷屏蔽取消,并且給DATA1本是存儲(chǔ)IRQ7的緩存數(shù)據(jù)改為新的代碼,讓其顯示CSUCSU。在整點(diǎn)報(bào)時(shí)上,融入了8255,8255由DATA8的數(shù)值決定跳轉(zhuǎn)哪種狀態(tài),當(dāng)分鐘大于等于1分鐘,則是二極管常亮,當(dāng)分鐘小于等于0分鐘,則是二極管閃爍和蜂鳴器揚(yáng)聲。4.2 課程設(shè)計(jì)心得體會(huì)在設(shè)計(jì)剛開始時(shí),我們只是知道要用8253A完成計(jì)數(shù),用8259與數(shù)碼管單元完成顯示功能,但是具體怎么實(shí)現(xiàn)的還不是很清楚。在接下來的一小段時(shí)間里,我們覺得無從下手,但

21、通過自己耐心搜集資料,向老師和同學(xué)請(qǐng)教,慢慢理出了頭緒,也有了自己的設(shè)計(jì)思想和設(shè)計(jì)框架,并有了一定的實(shí)現(xiàn)方法。對(duì)于設(shè)計(jì)題目來說,并非那么得復(fù)雜,但要設(shè)計(jì)者將所學(xué)轉(zhuǎn)換成相應(yīng)的實(shí)際應(yīng)用卻并非一件容易的事情。本設(shè)計(jì)題目的設(shè)計(jì)思想是簡單的,只需要使用8255A完成計(jì)數(shù),用8259與8279A數(shù)碼管單元完成顯示功能,并通過自己的理解附加一些功能片段來完成電子表的人性化功能設(shè)計(jì),如電子表的校準(zhǔn)、電子表的開始、停止、清零等功能。在課程設(shè)計(jì)過程中,我深刻地體會(huì)到:微機(jī)原理與接口技術(shù)這門課程對(duì)于我們的要求不僅限于對(duì)書本知識(shí)的理解,更重要的是對(duì)書本知識(shí)的運(yùn)用。除此之外,我們應(yīng)該在學(xué)習(xí)過程中充分發(fā)揮自己的想象力和創(chuàng)

22、新意識(shí),將對(duì)書本知識(shí)的理解與我們的創(chuàng)新意識(shí)相結(jié)合,設(shè)計(jì)出實(shí)用且功能良好的實(shí)物。通過本次課程設(shè)計(jì),也提高了我們的編程能力、協(xié)作能力和創(chuàng)新能力,為以后的學(xué)習(xí)打下了良好的基礎(chǔ)。參考文獻(xiàn)1梁健武 ,微機(jī)原理與接口技術(shù) 中國水利水電出版社2 宋杰 汪志宏 江敏,微機(jī)原理與接口技術(shù)課程設(shè)計(jì)機(jī)械工業(yè)出版社3范會(huì)敏 李晉惠,微型計(jì)算機(jī)原理及接口技術(shù)應(yīng)用 科學(xué)出版社 附錄:電子表軟件代碼 CODE SEGMENTASSUME CS:CODE/指定代碼段為CSINTPORT1 EQU 0020H/8259端口地址,EQU符號(hào)常量INTPORT2 EQU 0021H/把地址定義為符號(hào)名INTQ3 EQU INTER

23、UPT3INTQ7 EQU INTERUPT7CONTPORT EQU 00DFH/8279端口地址DATAPORT EQU 00DEHDATA1 EQU 0500H/數(shù)據(jù)段DATA2 EQU 0508HDATA3 EQU 0518HDATA4 EQU 0520HDATA5 EQU 0528HDATA6 EQU 0529HDATA7 EQU 052AH/時(shí)DATA8 EQU 052BH/分DATA9 EQU 052CH/秒DATA10 EQU 052EHIOCONPT EQU 0073H/8255端口,控制寄存器端口地址IOCPT EQU 0072H/C口IOBPT EQU 0071H/B口I

24、OAPT EQU 0070H/A口ORG 1000H/目標(biāo)程序第一字節(jié)的入口地址,1000H為數(shù)據(jù)段劃分區(qū)間START: CALL FORMAT/CALL調(diào)用子程序 CLD/方向標(biāo)志位,DF復(fù)位,程序往下執(zhí)行 MOV DX,CONTPORT /8279初始化MOV AL,00H/000為標(biāo)志位,鍵盤互鎖OUT DX,AL ;KEYBORD DISPLY MODEMOV AL,2AH/001為標(biāo)志位,分頻系數(shù)是10DOUT DX,AL ;8279 CLOCKMOV AL,0d0h/110為標(biāo)志位,清除FIFO狀態(tài)字OUT DX,AL ;8279 CLEARMOV AL,90h/100為標(biāo)志位,顯

25、示RAM,AI自增1OUT DX,AL ;READ FIFO RAM COMMAND MOV DX,004BH /8255初始化,是16位計(jì)數(shù)器,片選 MOV AL,0B6H/計(jì)數(shù)器2方式3先低后高二進(jìn)制 OUT DX,AL MOV DX,004AH/計(jì)數(shù)器2的端口地址 MOV AL,50H OUT DX,AL MOV AL,0C3H OUT DX,AL/裝載0C350H初值 MOV SI,DATA3/源操作數(shù)放到源變址寄存器 CALL LEDDISP MOV AX,0H MOV DS,AX CALL WRINTVER MOV AL,13H /8253初始化,邊沿觸發(fā)單片用ICW4 MOV D

26、X,INTPORT1/命令寄存器地址 OUT DX,AL MOV AL,08H/00001000B選中第3個(gè),11為IRQ3 MOV DX,INTPORT2/IRQ3,寫ICW2 OUT DX,AL MOV AL,0BH/緩沖主片非自動(dòng)處理器8086 OUT DX,AL/寫基本工作方式ICW4 MOV AL,77H/操作命令字OCW1,中斷屏蔽 OUT DX,AL/01110111B,0為中斷1為屏蔽 MOV AL,80H /8255初始化,寫控制字 MOV DX,IOCONPT OUT DX,AL/A方式0,ABC口為輸出 MOV DX,IOCPT/C口 MOV AL,0FFH/高電平,燈全

27、亮 OUT DX,ALWAITING: STI/開中斷,整點(diǎn)報(bào)時(shí)IOLED0: MOV AL,0FFH/方式2,ABC為輸入 MOV DX,IOCPT OUT DX,AL CALL T1 MOV CX,2 MOV AL,0FFHIOLED1: MOV DX,IOCPT OUT DX,AL AND AL,00H PUSH CX MOV CX,8FFFHDELAY0: LOOP DELAY0 POP CX LOOP IOLED1 CALL T2 JMP IOLED0T1: CMP BYTE PTR DS:DATA8,1H/=1min燈亮 JNB T1T2: CMP BYTE PTR DS:DATA

28、8,0H/=0min燈閃蜂鳴 JB T2 WRINTVER: MOV AX,0H MOV ES,AX MOV DI,002CH/002CH=44D=4*11,11為中斷類型 LEA AX,INTQ3/取中斷向量表IRQ3偏移地址到AX STOSW/再把AX內(nèi)容放到ES:DI所指002CH MOV AX,CS/取中斷向量表IRQ3段地址 STOSW MOV DI,003CH/003CH=60D=4*15,15為IRQ7中斷 LEA AX,INTQ7/類型號(hào) STOSW MOV AX,CS STOSW RETINTERUPT3:CLI /關(guān)中斷,CPU 開始執(zhí)行 MOV AL,DS:DATA6 I

29、NC AL/AL自增 MOV DS:DATA6,AL/記錄中斷次數(shù) CMP AL,14H/滿20次,往下執(zhí)行 JC PLAY/有借位跳PLAY MOV BYTE PTR DS:DATA6,00H MOV SI,DATA4/顯示把DATA4地址給SI CALL LEDDISP CALL NEWTIME CALL CONVERSALLPLAY: MOV AL,20H/再讀一次中斷 MOV DX,INTPORT1/OCW2 OUT DX,AL STI IRETINTERUPT7: CLI/當(dāng)電平不符,自動(dòng)跳Err MOV SI,DATA1 CALL LEDDISP MOV AL,20H MOV DX

30、,INTPORT1 OUT DX,AL IRETLEDDISP: MOV AL,90H/顯示RAM MOV DX,CONTPORT OUT DX,AL MOV CX,08H /與LOOP共用,循環(huán)8次 MOV BYTE PTR DS:DATA5,07H/刷新數(shù)碼管LED1: MOV BL,DS:DATA5 MOV BH,0H MOV AL,CS:BX+SI/051FH為段地址 MOV DX,DATAPORT OUT DX,AL SUB BYTE PTR DS:DATA5,01H/從051FH每次減1 LOOP LED1/直到0518H跳出循環(huán)LED2:RETFORMAT: MOV BX,0/D

31、ATA1,顯示CSU-CSU MOV WORD PTR DS:BX+DATA1,6D3EH ADD BX,2 MOV WORD PTR DS:BX+DATA1,4039H ADD BX,2 MOV WORD PTR DS:BX+DATA1,3E40H ADD BX,2 MOV WORD PTR DS:BX+DATA1,396DH ADD BX,2 MOV WORD PTR DS:BX+DATA1,063FH/DATA2 ADD BX,2 MOV WORD PTR DS:BX+DATA1,4F5BH ADD BX,2 MOV WORD PTR DS:BX+DATA1,6D66H ADD BX,2

32、 MOV WORD PTR DS:BX+DATA1,077DH ADD BX,2 MOV WORD PTR DS:BX+DATA1,6F7FH ADD BX,2 MOV WORD PTR DS:BX+DATA1,7C77H ADD BX,2 MOV WORD PTR DS:BX+DATA1,5E39H ADD BX,2 MOV WORD PTR DS:BX+DATA1,7179H ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F3FH/DATA3 ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F40H ADD BX,2 MOV WORD PTR

33、DS:BX+DATA1,403FH ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F3FH ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F3FH/DATA4 ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F40H ADD BX,2 MOV WORD PTR DS:BX+DATA1,403FH ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F3FH MOV BYTE PTR DS:DATA6,00D/DATA6-10 MOV BYTE PTR DS:DATA7,11H MOV BYTE PTR DS:DATA8,59H MOV BYTE PTR DS:DATA9,40H MOV WORD PT

溫馨提示

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

評(píng)論

0/150

提交評(píng)論