微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)書_第1頁(yè)
微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)書_第2頁(yè)
微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)書_第3頁(yè)
微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)書_第4頁(yè)
微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)書_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

實(shí)驗(yàn)安排

第一次實(shí)驗(yàn):

存儲(chǔ)區(qū)1中存放著ASCII碼表(00H—7FH),要求編寫程序,將存儲(chǔ)區(qū)

1中的內(nèi)容復(fù)制到存儲(chǔ)區(qū)2o然后,將存儲(chǔ)區(qū)2中的數(shù)字編碼轉(zhuǎn)換為如下編碼:

30H—AAH,31H—BBH,32H—CCH33H—DDH,34H—EEH,35H—FFH,

36H—A8H,37H—BFH38H—C9H,39H—DIHo

第二次實(shí)驗(yàn):

1、兩個(gè)數(shù)組的多位數(shù)加法操作(比如數(shù)組是100個(gè)字節(jié)的數(shù)據(jù)等),可以考

慮數(shù)組中的數(shù)據(jù)既可以是二進(jìn)制數(shù),也可以是十進(jìn)制數(shù)。

2、編程完成以下公式的運(yùn)算:(假設(shè)公式中的所有變量均為16位有符號(hào)的數(shù))

1)W=X+Y*3()()要求乘積的高位在W中,低位在R中

2)W=P/(Q-15)要求商存入W,余數(shù)存入R

第三次實(shí)驗(yàn):

1、編程實(shí)現(xiàn)各種進(jìn)制之間的轉(zhuǎn)換,例如十進(jìn)制到二進(jìn)制、二進(jìn)制到十進(jìn)制,

十六進(jìn)制到二進(jìn)制、二進(jìn)制到十六進(jìn)制等;

2、編寫數(shù)字排序子程序,通過(guò)主程序調(diào)用實(shí)現(xiàn)數(shù)組數(shù)據(jù)的排序(升序或降序);

第四次實(shí)驗(yàn):基本I/O和地址譯碼實(shí)驗(yàn)

1、8/32位I/O接口設(shè)計(jì)實(shí)驗(yàn)

2、地址譯碼電路設(shè)計(jì)實(shí)驗(yàn)

第五次實(shí)驗(yàn):8259中斷控制器實(shí)驗(yàn)

1、8259查詢中斷應(yīng)用實(shí)驗(yàn)

2、點(diǎn)陣漢字滾動(dòng)顯示實(shí)驗(yàn)

第六次實(shí)驗(yàn):8255和8254實(shí)驗(yàn),應(yīng)用中斷方式等

1、連接8255與鍵盤掃描單元,編寫程序完成鍵盤掃描功能,并將讀到的按

鍵值依次顯示在數(shù)碼管上

2、利用8254的定時(shí)功能,編寫程序完成在數(shù)碼管上循環(huán)顯示任意字符串

第七次實(shí)驗(yàn):A/D和D/A實(shí)驗(yàn)

1、A/D轉(zhuǎn)換實(shí)驗(yàn)

2、D/A產(chǎn)生任意波形的實(shí)驗(yàn)

微機(jī)原理與接口技術(shù)

實(shí)驗(yàn)指導(dǎo)書

吉林大學(xué)儀器科學(xué)與電氣工程學(xué)院

2010年12月

目錄

第一章軟件實(shí)驗(yàn)部分..............................................2

實(shí)驗(yàn)一顯示程序與數(shù)據(jù)傳送實(shí)驗(yàn)......................................2

實(shí)驗(yàn)二數(shù)碼轉(zhuǎn)換程序?qū)嶒?yàn)............................................4

實(shí)驗(yàn)三運(yùn)算類指令編程實(shí)驗(yàn)..........................................6

第二章硬件實(shí)驗(yàn)部分..............................................8

實(shí)驗(yàn)四8/32位I/O接口實(shí)驗(yàn)...........................................8

實(shí)驗(yàn)五8255并H控制器應(yīng)用實(shí)驗(yàn).....................................II

實(shí)驗(yàn)六8259中斷控制器實(shí)驗(yàn).........................................13

實(shí)驗(yàn)七8254定時(shí)/計(jì)數(shù)器應(yīng)用實(shí)驗(yàn)....................................15

實(shí)驗(yàn)八16550串行控制器應(yīng)用實(shí)驗(yàn)...................................207

實(shí)驗(yàn)九8237DMA控制器應(yīng)用實(shí)驗(yàn)...................................17

實(shí)驗(yàn)十A/D轉(zhuǎn)換與D/A轉(zhuǎn)換實(shí)驗(yàn).....................................25

附錄ATD?PIT++實(shí)驗(yàn)系統(tǒng)硬件介紹.................................27

第一章軟件實(shí)驗(yàn)部分

本章主要通過(guò)實(shí)驗(yàn)來(lái)學(xué)習(xí)80X86的指令系統(tǒng)、尋址方式以及程序的設(shè)計(jì)方法,

同時(shí)掌握集成操作軟件Tdpit的使用。

實(shí)驗(yàn)一顯示程序與數(shù)據(jù)傳送實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1)掌握在PC機(jī)上以十六進(jìn)制形式顯示數(shù)據(jù)的方法。

2)掌握部分DOS功能調(diào)用使用方法。

3)掌握與數(shù)據(jù)有關(guān)的不同尋址方式。

3)熟悉Windows集成操作軟件Tdpit的操作環(huán)境和操作方法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容及說(shuō)明

1.顯示程序?qū)嶒?yàn)

一般來(lái)說(shuō),有很多程序需要顯示輸出提示運(yùn)行的狀況和結(jié)果,有的還需要將數(shù)

據(jù)區(qū)中的內(nèi)容顯示在屏幕上。本實(shí)驗(yàn)要求將指定數(shù)據(jù)區(qū)的數(shù)據(jù)以十六進(jìn)制數(shù)形式顯

示在屏幕上,并利用DOS功能調(diào)用完成一些提示信息的顯示。通過(guò)本實(shí)驗(yàn),初步掌

握實(shí)驗(yàn)系統(tǒng)配套操作軟件的使用。

實(shí)驗(yàn)中所使用DOS功能調(diào)用(INT21H)說(shuō)明如下。

(1)顯示單個(gè)字符輸出

入口:AH=02H

調(diào)用參數(shù):口1=輸出字符

⑵顯示字符串

入口:AH=09H

調(diào)用參數(shù):DS:DX=串地址,鄭,為結(jié)束字符

(3)鍵盤輸入并回顯

入口:AH=01H

返回參數(shù):人1=輸出字符

(4)返回DOS系統(tǒng)

入口:AH=4CH

調(diào)用參數(shù):AL=返回碼

2.數(shù)據(jù)傳送實(shí)驗(yàn)

本實(shí)驗(yàn)要求將數(shù)據(jù)段中的一個(gè)字符串傳送到附加段中,并輸出附加段中的目標(biāo)

字符中到屏幕上。

4、實(shí)驗(yàn)步驟

1.顯示程序?qū)嶒?yàn)

(1)運(yùn)行Tdpit集成操作軟件,進(jìn)入編輯調(diào)試集成環(huán)境。

(2)根據(jù)程序設(shè)計(jì)使用語(yǔ)言不同,在“語(yǔ)言設(shè)置”菜單項(xiàng)中設(shè)置所使用的語(yǔ)言。如

圖1-1所示。該項(xiàng)一經(jīng)設(shè)置,會(huì)再下次啟動(dòng)后仍保持不變。

圖1-1設(shè)置語(yǔ)言環(huán)境

(3)開(kāi)始新建文件進(jìn)行編程「點(diǎn)擊“文件”菜單項(xiàng)中的“新建”,可以新建一個(gè)空白

文檔。默認(rèn)名為Td-pitl。如圖1-2所示。

圖1-2新建空白文檔

(4)編寫程序,如圖1-3所示,并保存,此時(shí)軟件會(huì)提示輸入新的文件名,輸入

文件名后點(diǎn)擊保存。

圖1-3程序編輯界面

(5)點(diǎn)擊啰,編譯文件,若程序編譯無(wú)誤,然后再點(diǎn)擊囹,鏈接程序。編譯

連接成功會(huì)在輸出信息欄顯示輸出信息,如圖1-4所示。

圖1-4編譯連接輸出信息

(6)編譯連接成功后可以點(diǎn)擊砸,運(yùn)行程序,查看運(yùn)行結(jié)果。

(7)可以點(diǎn)擊1口,調(diào)試程序,進(jìn)入調(diào)試界面,進(jìn)行程序的調(diào)試。

2.數(shù)據(jù)傳送實(shí)驗(yàn)

(1)運(yùn)行Tdpit集成操作軟件,編寫實(shí)驗(yàn)程序。

(2)編譯連接無(wú)誤后,點(diǎn)擊三],進(jìn)入調(diào)試環(huán)境,進(jìn)行程序的調(diào)試。如圖1-5所

圖1-5進(jìn)入調(diào)試環(huán)境

(3)按F8鍵單步運(yùn)行程序,執(zhí)行完MOVDS,AX語(yǔ)句后,觀察DS寄存器中出現(xiàn)

的段地址。激活Dump數(shù)據(jù)顯示區(qū),用Ctrl+G命令,輸入要查看的數(shù)據(jù)區(qū)地址一

“0C69:0000"。如圖1-6所示。可以在Dump數(shù)據(jù)區(qū)看到DS數(shù)據(jù)段中MSR源數(shù)據(jù)

申一"HELLO,WORLD!$”。如圖1-7所示。

圖1-6根據(jù)DS值查看數(shù)據(jù)段

圖1-7DS源數(shù)據(jù)段數(shù)據(jù)

(4)繼續(xù)單步運(yùn)行程序,執(zhí)行MOVES,AX語(yǔ)句后,可以看到ES附加數(shù)據(jù)段出

現(xiàn)的段地址,用同樣的方法可以查看ES:OOOO的數(shù)據(jù)。如圖1-8所示。

圖1-8根據(jù)ES值查看附加數(shù)據(jù)段

(5)數(shù)據(jù)傳輸還沒(méi)開(kāi)始進(jìn)行,此時(shí)ES段的數(shù)據(jù)為空。繼續(xù)單步執(zhí)行完程序,可

以看到ES數(shù)據(jù)段逐漸被寫入源數(shù)據(jù)段DS的數(shù)據(jù)。直到數(shù)據(jù)傳輸完畢,可以看到ES

數(shù)據(jù)段中目的數(shù)據(jù)串MSD已經(jīng)被寫入了數(shù)據(jù)串一”HELLO,WORLD!$”。如圖2-2-5

所示。

圖1-9根據(jù)ES值查看附加數(shù)據(jù)段

(6)可以更改程序中聲明的源數(shù)據(jù)區(qū)數(shù)據(jù),考察程序的正確性。

實(shí)驗(yàn)二數(shù)碼轉(zhuǎn)換程序?qū)嶒?yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

掌握不同進(jìn)制數(shù)及編碼相互轉(zhuǎn)換的程序設(shè)計(jì)方法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容及說(shuō)明

計(jì)算機(jī)輸入設(shè)備輸入的信息一般是由ASCII碼或BCD碼表示的數(shù)據(jù)或字符,

CPU一般均用二進(jìn)制數(shù)進(jìn)行計(jì)算或其他信息處理,處理結(jié)果的輸出又必須依照外設(shè)

的要求變?yōu)锳SCII碼、BCD碼或七段顯示碼等。因此,在應(yīng)用軟件中,各類數(shù)制

的轉(zhuǎn)換和代碼的轉(zhuǎn)換是必不可少的。計(jì)算機(jī)與外設(shè)間的數(shù)碼對(duì)應(yīng)關(guān)系如表2-1所示。

數(shù)碼轉(zhuǎn)換關(guān)系如圖所示。

圖2-1計(jì)算機(jī)與外設(shè)間的數(shù)倍轉(zhuǎn)換關(guān)系

表2I數(shù)碼轉(zhuǎn)換對(duì)應(yīng)關(guān)系

二進(jìn)制機(jī)七段碼

十六進(jìn)制BCD碼ASCII碼

器碼共陽(yáng)共陰

00000000030H40H3FH

10001000131H79H06H

20010001032H24H5BH

30011001133H30H4FH

40100010034H19H66H

50101010135H12H6DH

60110011036H02H7DH

70111011137H78H07H

81000100038H00H7FH

91001100139H18H67H

A101041H08H77H

B101142H03H7CH

C110043H46H39H

D110144H21H5EH

E111045H06H79H

F111146H0EH71H

1.將ASCII碼表示的十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)

nn1

十進(jìn)制數(shù)可以表示為:Dnx]O+Dn_jx1O-+?--+Dox10O=0^1其中Dj代表十

進(jìn)制數(shù)1、2、3...9、Oo

i

上式可以轉(zhuǎn)換為:LDixlO=?...(DnxlO+Dn_1)xlO)+Dn_2)xlO+...+D1)xlO+Do

山上式可歸納十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制的方法:從十進(jìn)制數(shù)的最高位口門開(kāi)始作乘10

加次位的操作,依次類推,則可求出二進(jìn)制數(shù)結(jié)果。

本實(shí)驗(yàn)要求將緩沖區(qū)中的一個(gè)五位十進(jìn)制數(shù)00012的ASCII碼轉(zhuǎn)換成二進(jìn)制數(shù),

并將轉(zhuǎn)換結(jié)果按位顯示在屏幕上。

2.將十進(jìn)制數(shù)的ASCII碼轉(zhuǎn)換為BCD碼

本實(shí)驗(yàn)要求將鍵盤輸入的一個(gè)五位十進(jìn)制數(shù)54321的ASCII碼存放在數(shù)據(jù)區(qū)中,

轉(zhuǎn)換為BCD碼后,并將轉(zhuǎn)換結(jié)果按位分別顯示于屏幕上。若輸入的不是十進(jìn)制數(shù)

的ASCH碼,則輸出“FP。提示:一字節(jié)ASCII碼取其低四位即變?yōu)锽CD碼。

3.將十六進(jìn)制數(shù)的ASCII碼轉(zhuǎn)換為十進(jìn)制數(shù)

十六位二進(jìn)制數(shù)的值域?yàn)?-65535,最大可轉(zhuǎn)換為五位十進(jìn)制數(shù)。五位十進(jìn)制

數(shù)可表示為:

432

ND=D4xlO+D3xlO+D2xlO+D1xlO+Do

因此,將十六位二進(jìn)制數(shù)轉(zhuǎn)換為五位Ascn碼表示的十進(jìn)制數(shù),就是求D1-D4,

并將它們轉(zhuǎn)化為Ascn碼。

本實(shí)驗(yàn)要求將緩沖區(qū)中存放的OOOCH的ASCH碼轉(zhuǎn)換成十進(jìn)制數(shù),并將轉(zhuǎn)換結(jié)

果顯示在屏幕上。

4.BCD碼轉(zhuǎn)換為二進(jìn)制碼

本實(shí)驗(yàn)要求將四個(gè)二位十進(jìn)制數(shù)的BCD碼存放在某一內(nèi)存單元中,轉(zhuǎn)換出的二

進(jìn)制數(shù)碼存入其后的內(nèi)存單元中,轉(zhuǎn)換結(jié)束,送屏幕顯示。

4、實(shí)驗(yàn)步驟

(1)運(yùn)行Tdpit集成操作軟件,按照各實(shí)驗(yàn)要求分別編寫實(shí)驗(yàn)程序。

(2)對(duì)實(shí)驗(yàn)程序進(jìn)行編譯、鏈接。

(3)使用運(yùn)行功能執(zhí)行程序,觀察運(yùn)行結(jié)果。

(4)使用調(diào)試功能調(diào)試程序,觀察在調(diào)試過(guò)程中,程序指令執(zhí)行之后各寄存器

及數(shù)據(jù)區(qū)的內(nèi)容。

(5)更改數(shù)據(jù)區(qū)中的數(shù)據(jù),反復(fù)測(cè)試,驗(yàn)證程序功能°

實(shí)驗(yàn)三運(yùn)算類指令編程實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1)掌握運(yùn)算類指令編程及調(diào)試方法。

2)掌握運(yùn)算類指令對(duì)各狀態(tài)標(biāo)志位的影響及測(cè)試方法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容及說(shuō)明

80x86指令系統(tǒng)提供了實(shí)現(xiàn)加、減、乘、除運(yùn)算的基本指令,可對(duì)表3-1所示

的數(shù)據(jù)類型進(jìn)行算術(shù)運(yùn)算。

表3?1數(shù)據(jù)類型算術(shù)運(yùn)算表

二進(jìn)制BCD碼

數(shù)制

帶符號(hào)無(wú)符號(hào)組合非組合

運(yùn)算符+、一、+、X+、一+、一、+、X

操作數(shù)字節(jié)、字、多精度字節(jié)(二位數(shù)字)字節(jié)(一位數(shù)字)

1.二進(jìn)制雙精度加法運(yùn)算

本實(shí)驗(yàn)要求計(jì)算X+Y=Z,將結(jié)果Z輸出到屏幕,其中X=001565A0H,

Y=0021B79EHo

實(shí)驗(yàn)利用累加器AX,先求低十六位和,并存入低址存儲(chǔ)單元,后求高16位和,

再存入高址存儲(chǔ)單元。由于低位和可能向高位有進(jìn)位,因而高位字相加語(yǔ)句需用

ADC指令,則低位相加有進(jìn)位時(shí),CF=1,高位字相加時(shí),同時(shí)加上CF中的1。在

80386以上微機(jī)中可以直接使用32位寄存器和32位加法指令完成本實(shí)驗(yàn)的功能。

2.十進(jìn)制數(shù)的BCD碼減法運(yùn)算

本實(shí)驗(yàn)要求計(jì)算X-Y=Z,其中,X、Y、Z為BCD碼,其中X=0400H,Y=0102Ho

3.乘法運(yùn)算

本實(shí)驗(yàn)要求實(shí)現(xiàn)十進(jìn)制數(shù)的乘法,被乘數(shù)和奏數(shù)均以BCD碼形式存放于內(nèi)存

中,被乘數(shù)為54320H,乘數(shù)為3H,運(yùn)算結(jié)束后,將乘積在屏幕上顯示。

4.用減奇數(shù)開(kāi)平方運(yùn)算

80x86指令系統(tǒng)中有乘除法指令但沒(méi)有開(kāi)平方指令,因此,開(kāi)平方運(yùn)算是通過(guò)

程序來(lái)實(shí)現(xiàn)的「用減奇數(shù)法可求得近似平方根,獲得平方根的整數(shù)部分「我們知道,

N個(gè)自然數(shù)中的奇數(shù)之和等于N2,即:

1+3+5=9=32

1+3+5+7=16=42

1+3+5+7+9+11+13+15=64=82

若要做S的開(kāi)方運(yùn)算,那麼就可以從S中逐次減去自然數(shù)中的奇數(shù)1,3,5,7…,

一直進(jìn)行到相減數(shù)為。或不夠減下一個(gè)自然數(shù)的奇數(shù)為止,然后統(tǒng)計(jì)減去自然數(shù)的奇

數(shù)個(gè)數(shù),它就是S的近似平方根。本實(shí)驗(yàn)要求利用減奇法計(jì)算0040H的開(kāi)平方值,

并將運(yùn)算結(jié)果顯示在屏幕上。

4、實(shí)驗(yàn)步驟

(1)運(yùn)行Tdpit集成操作軟件,按各實(shí)驗(yàn)要求編寫實(shí)驗(yàn)程序。

(2)分別對(duì)實(shí)驗(yàn)程序進(jìn)行編譯、鏈接。

(3)使用運(yùn)行功能運(yùn)行程序,觀察運(yùn)行結(jié)果。

(4)使用調(diào)試功能調(diào)試程序,觀察在調(diào)試過(guò)程中,各運(yùn)算指令執(zhí)行后,各寄存

器、標(biāo)志位及數(shù)據(jù)區(qū)內(nèi)容的變化。

(5)更改數(shù)據(jù)區(qū)中的數(shù)據(jù),反復(fù)測(cè)試,驗(yàn)證程序功能。

第二章硬件實(shí)驗(yàn)部分

接口技術(shù)是把由處理器、存儲(chǔ)器等組成的基本系統(tǒng)與外部設(shè)備連接起來(lái),從而

實(shí)現(xiàn)CPU與外部設(shè)備通信的一門技術(shù),任何微機(jī)應(yīng)用開(kāi)發(fā)工作都離不開(kāi)接口的設(shè)計(jì)、

選用及連接。微機(jī)應(yīng)用系統(tǒng)需要設(shè)計(jì)的硬件是一些接口電路,所要編寫的軟件是控

制這些接口電路按要求工作的驅(qū)動(dòng)程序。因此,接口技術(shù)是微機(jī)應(yīng)用中必不可少的

基本技能。

實(shí)驗(yàn)Ui8/32位I/O接口實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1)掌握基本i/o接口電路的沒(méi)計(jì)方法。

2)熟悉I/O操作指令及8/32位I/O端口的操作方法。

3)了解LED點(diǎn)陣的基本結(jié)構(gòu)。

4)學(xué)習(xí)LED點(diǎn)陣掃描顯示程序的設(shè)計(jì)方法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容

(1)利用8位I/O接口,實(shí)現(xiàn)微機(jī)對(duì)外部輸入數(shù)據(jù)的讀取和對(duì)輸出數(shù)據(jù)的輸出。用

撥動(dòng)開(kāi)關(guān)和數(shù)據(jù)燈作為輸入和輸出顯示設(shè)備,將讀到開(kāi)關(guān)的數(shù)據(jù)顯示在數(shù)據(jù)燈上。

(2)利用32位的I/O接口,按照32位的I/O操作方式,操作點(diǎn)陣LED顯示單元的16

行X16列點(diǎn)陣。

(3)使用32位I/O接口單元的32位輸出00?031控制點(diǎn)陣LED單元R0?R15

和L0?L15。編寫程序,在16X16點(diǎn)陣上顯示漢字(學(xué)生姓名)。

4、實(shí)驗(yàn)原理

1.輸入接口設(shè)計(jì)

輸入接口一般用三態(tài)緩沖器實(shí)現(xiàn),外部設(shè)備輸入數(shù)據(jù)通過(guò)三態(tài)緩沖器,通過(guò)數(shù)

據(jù)總線傳送給微機(jī)系統(tǒng)。74LS245是一種8通道雙向的三態(tài)緩沖器,其管腳結(jié)構(gòu)如

圖4-1所示。DIR引腳控制緩沖器數(shù)據(jù)方向,DIR為1表示數(shù)據(jù)由A[7:0]至B[7:0],

DIR為。表示數(shù)據(jù)由B[7:0]至A[7:0]。G引腳為緩沖器的片選信號(hào),低電平有效。

圖4-174LS245雙向三態(tài)緩沖器管腳圖

2.輸出接口設(shè)計(jì)

輸出接口一般用鎖存器實(shí)現(xiàn),從總線送出的數(shù)據(jù)可以暫存在鎖存器中。

74LS374/74LS574是一種8通道上沿觸發(fā)鎖存器。74LS574管腳結(jié)構(gòu)如圖4-2所示。

D[7:0]為輸入數(shù)據(jù)線,Q[7:0]為輸出數(shù)據(jù)線。CLK引腳為鎖存控制信號(hào),上升沿有效。

當(dāng)上升沿到時(shí),輸出數(shù)據(jù)線鎖存輸入數(shù)據(jù)線上的數(shù)據(jù)。0E引腳為鎖存器的片選信號(hào),

低電平有效。

圖4-274LS574上沿觸發(fā)鎖存器管腳圖

3.8位I/O接口設(shè)計(jì)

用一組74LS245和74LS374/574可以構(gòu)成一個(gè)8位的I/O接口電路,既實(shí)現(xiàn)數(shù)

據(jù)的輸入又實(shí)現(xiàn)數(shù)據(jù)的輸出,輸入輸出可以占用同一個(gè)端口。是輸入還是輸出用總

線讀寫信號(hào)來(lái)區(qū)分°總線讀信號(hào)IOR和片選信號(hào)CS相“或”來(lái)控制輸入接口74LS245

的使能信號(hào)G。總線寫信號(hào)IOW和片選信號(hào)CS相“或”來(lái)控制輸出接口74LS574的鎖

存信號(hào)CLK。實(shí)驗(yàn)系統(tǒng)中基本I/O接口單元就實(shí)現(xiàn)了這種的電路,8位I/O電路連接

如圖4-3所示。

INALZDX;將工A[7:0]連接設(shè)備的8位數(shù)據(jù)通過(guò)數(shù)據(jù)總線D[7:0]輸入到AL。

OUTDXZAL;將311中的數(shù)據(jù)通過(guò)數(shù)據(jù)總線D[7:0]輸出到OA[7:0]連接的設(shè)備。

圖4-3用74LS245和74LS574組成的8位I/O接口電路

4.32位I/O接口設(shè)計(jì)

用四組8位的I/O接口電路可以構(gòu)成一個(gè)32位的I/O接口電路,可以一次進(jìn)行

32位數(shù)據(jù)寬度的I/。操作。I/O讀、寫、片選信號(hào)對(duì)輸入輸出的控制基本和8位I/O

接口電路相同,但是,對(duì)于32位數(shù)據(jù)總線,每個(gè)字節(jié)都對(duì)應(yīng)著一位字節(jié)使能信號(hào),

共有4位字節(jié)使能信號(hào)BE0?BE3,因此每個(gè)8位I/O接口電路是否有效要受BE[3:0]

的控制。

INEAX,DX;將1[31:0]連接設(shè)備的32位數(shù)據(jù)通過(guò)數(shù)據(jù)總線D[31:0]輸入到EAX。

OUTDX,EAX;將EAX中的數(shù)據(jù)通過(guò)數(shù)據(jù)總線D[31:0]輸出到0[31:0]連接的設(shè)備。

5.16X16點(diǎn)陣工作原理

8X8點(diǎn)陣LED相當(dāng)于8X8個(gè)發(fā)光管組成的陣列,對(duì)于共陽(yáng)極LED來(lái)說(shuō),其

中每一行共用一個(gè)陽(yáng)極(行控制),每一列共用一個(gè)陰極(列控制)。行控制和列控

制滿足正確的電平就可使相應(yīng)行列的發(fā)光管點(diǎn)亮。實(shí)驗(yàn)平臺(tái)上點(diǎn)陣LED的管腳及相

應(yīng)的行、列控制位如圖4-4所示。

圖4-4點(diǎn)陣LED管腳圖

共陽(yáng)極和共陰極LED的內(nèi)部結(jié)構(gòu)分別如圖4-5和4-6所示。

圖4-5共陽(yáng)極LED內(nèi)部結(jié)構(gòu)圖圖4-6共陰極LED內(nèi)部結(jié)構(gòu)圖

4、實(shí)驗(yàn)說(shuō)明及步驟

1.8位I/O操作實(shí)驗(yàn)

本實(shí)驗(yàn)實(shí)現(xiàn)的是將開(kāi)關(guān)K[7:0]的數(shù)據(jù)通過(guò)輸入數(shù)據(jù)通道讀入CPU的寄存器,然

后再通過(guò)輸出數(shù)據(jù)通道將該數(shù)據(jù)輸出到數(shù)據(jù)燈顯示,該程序循環(huán)運(yùn)行,直到按動(dòng)PC

犍盤上任意按鍵再退出程序。實(shí)驗(yàn)程序流程如圖4-7所示。參考實(shí)驗(yàn)接線如圖5-8

所示。

實(shí)驗(yàn)步驟如下:

(1)按圖4-8連接實(shí)驗(yàn)線路圖。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)程序,對(duì)實(shí)驗(yàn)程序進(jìn)

行編譯、鏈接。

(3)運(yùn)行程序,撥動(dòng)開(kāi)關(guān),觀看數(shù)據(jù)燈顯示是否正確。

圖4?78位I/O接口設(shè)計(jì)實(shí)驗(yàn)參考流程圖圖4?88位I/O接口設(shè)計(jì)實(shí)驗(yàn)參考接線圖

2.32位I/O操作實(shí)驗(yàn)

本實(shí)驗(yàn)利用點(diǎn)陣LED顯示單元的16X16點(diǎn)陣,將16行控制和16列控制合成一個(gè)

32位端口來(lái)操作(列控制連接到發(fā)光管的陽(yáng)極,行控制連接發(fā)光管的陰極,列為“1”,

相應(yīng)的行為“0”,則對(duì)應(yīng)的一列發(fā)光管點(diǎn)亮)。用32位I/O接口單元中的32位輸出0[31:0]

的高16位控制16列,低16位控制16行,即一次I/O操作就可完成LED點(diǎn)陣的一次顯示。

實(shí)驗(yàn)要求控制點(diǎn)陣循環(huán)逐行顯示,直到按動(dòng)PC鍵盤上任意按鍵再停止程序退出。

實(shí)驗(yàn)步驟如下:

(1)實(shí)驗(yàn)接線0-0RO

K????

圖如圖所示,按or\\???*

4-9cc7

OcRJ

/0-0R7

圖連接實(shí)驗(yàn)線路圖。>c8

B0-0RS

運(yùn)彳亍EO????

(2)Tdpit則??

BE1Vo???*?點(diǎn)陣LED

EB2o15

現(xiàn)

集成操作軟件,根據(jù)EB3單0-0RI5顯示

oe6

實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)l0-0LO單元

???*

????*

程序,對(duì)實(shí)驗(yàn)程序進(jìn)o3

0-0L7

o4

行編譯、鏈接。0-0L8

???*

(3)運(yùn)行程序,???*

0-0L15

觀看LED點(diǎn)陣顯示

是否正確。

圖4?932位I/O操作實(shí)驗(yàn)參考接線圖

3.點(diǎn)陣顯示實(shí)驗(yàn)

利用取字模軟件得到漢字字符數(shù)粗,設(shè)計(jì)程序,在點(diǎn)陣上顯示學(xué)生姓名C實(shí)驗(yàn)

參考接線如圖4?9所示。實(shí)驗(yàn)步驟如下:

(1)按圖4-9連接實(shí)驗(yàn)線路圖。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)要求編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,觀察點(diǎn)陣的顯示,驗(yàn)證程序功能。

使用點(diǎn)陣顯示符號(hào)時(shí),必須首先得到顯示符號(hào)的編碼,這可以根據(jù)需要通過(guò)不

同的工具獲得。

實(shí)驗(yàn)五8255并口控制器應(yīng)用實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1)學(xué)習(xí)并掌握8255的工作方式及其應(yīng)用。

2)掌握8255典型應(yīng)用電路的接法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容

1.基本輸入輸出實(shí)驗(yàn)。

編寫程序,使8255的A口為輸出,B口為輸入,完成撥動(dòng)開(kāi)關(guān)到數(shù)據(jù)燈的數(shù)據(jù)

傳輸。要求只要開(kāi)關(guān)撥動(dòng),數(shù)據(jù)燈的顯示就發(fā)生相應(yīng)改變。

2.流水燈顯示實(shí)驗(yàn)。

編寫程序,使8255的A口和B口均為輸出,數(shù)據(jù)燈D7?DO由左向右,每次僅

亮一個(gè)燈,循環(huán)顯示,D15?D8與D7?DO正相反,由右向左,每次僅點(diǎn)亮一個(gè)燈,

循環(huán)顯示。

3.計(jì)數(shù)器顯示實(shí)驗(yàn)。

編寫程序,使8255的A口和B口均為輸出,數(shù)據(jù)燈D15~D0顯示二進(jìn)制形式的

計(jì)數(shù)結(jié)果。

4、實(shí)驗(yàn)原理

8255可編程外圍接口芯片是Intel公司生產(chǎn)的通用并行I/O接口芯片,它具有A、

B、C三個(gè)并行接口,用+5V單電源供電,能在以下三種方式下工作:方式0-基本

輸入/輸出方式、方式選通輸入/輸出方式、方式2--雙向選通工作方式。8255

的內(nèi)部結(jié)構(gòu)及引腳如圖5-1所示,8255工作方式控制字和C口按位置位/復(fù)位控制字

格式如圖5-2所示。

圖5-18255內(nèi)部結(jié)構(gòu)及外部引腳圖

圖5-28255控制字格式

8255實(shí)驗(yàn)單元電路圖如圖5-3所示:

圖5-38255實(shí)驗(yàn)單元電路圖

5、實(shí)驗(yàn)步驟

1.基本輸入輸出實(shí)驗(yàn)

本實(shí)驗(yàn)使8255端口A工作在方式0并作為輸出口,端口B工作在方式0并作為輸

入口。用一組開(kāi)關(guān)信號(hào)接入端口B,端口A輸出線接至一組數(shù)據(jù)燈上,然后通過(guò)對(duì)

8255芯片編程來(lái)實(shí)現(xiàn)輸入輸出功能。具體實(shí)驗(yàn)步驟如下述:

(1)實(shí)驗(yàn)接線圖如圖5?4所示,按圖連接實(shí)驗(yàn)線路圖。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,改變撥動(dòng)開(kāi)關(guān),同時(shí)觀察LED顯示,驗(yàn)證程序功能。

圖5-48255基本輸入輸出實(shí)驗(yàn)接線圖

2.流水燈顯示實(shí)驗(yàn)

使8255的A口和B口均為輸出,數(shù)據(jù)燈D7?D。由左向右,每次僅亮一個(gè)燈,

循環(huán)顯示,D15?D8與D7?DO正相反,由右向左,每次僅點(diǎn)亮一個(gè)燈,循環(huán)顯示。

實(shí)驗(yàn)步驟如卜.所述:

(1)實(shí)驗(yàn)接線圖如圖5-5所示,按圖連接實(shí)驗(yàn)線路圖。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,觀察LED燈的顯示,驗(yàn)證程序功能。

(4)自己改變流水燈的方式,編寫程序。

圖5-58255流水燈實(shí)驗(yàn)接線圖

3.計(jì)數(shù)器顯示實(shí)驗(yàn)

使8255的A口和B口均為輸出,數(shù)據(jù)燈D15~D0顯示二進(jìn)制形式的計(jì)數(shù)結(jié)果。

實(shí)驗(yàn)步驟如下所述:

(1)實(shí)驗(yàn)接線圖如圖5?5所示,按圖連接實(shí)驗(yàn)線路圖。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,觀察LED燈的顯示,驗(yàn)證程序功能。

實(shí)驗(yàn)六8259中斷控制器實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1.掌握8259中斷控制器的工作原理。

2.掌握8259中斷控制器的應(yīng)用編程方法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容

(1)利用實(shí)驗(yàn)平臺(tái)上的8259控制器,通過(guò)查詢中斷源方法,設(shè)計(jì)一個(gè)查詢中斷

應(yīng)用實(shí)驗(yàn),處理IRO和IR1發(fā)出的中斷請(qǐng)求。

(2)利用上述查詢中斷實(shí)驗(yàn),實(shí)現(xiàn)點(diǎn)陣漢字(學(xué)生姓名)的滾動(dòng)顯示。要求通

過(guò)IRO實(shí)現(xiàn)點(diǎn)陣的左右滾動(dòng)顯示和停止,通過(guò)IR1實(shí)驗(yàn)點(diǎn)陣漢字的上下滾動(dòng)顯示和停

止。

4、實(shí)驗(yàn)原理

1.中斷控制器8259簡(jiǎn)介

中斷控制器8259是Intel公司專為控制優(yōu)先級(jí)中斷而設(shè)計(jì)開(kāi)發(fā)的芯片。它將中

斷源優(yōu)先級(jí)排隊(duì)、辨別中斷源以及提供中斷矢量的電路集于一片中,因此無(wú)需附加

任何電路,只需對(duì)8259進(jìn)行編程,就可以管理8級(jí)中斷,并選擇優(yōu)先模式和中斷請(qǐng)

求方式,即中斷結(jié)構(gòu)可以由用戶編程來(lái)設(shè)定。同時(shí),在不需增加其他電路的情況下,

通過(guò)多片8259的級(jí)連,能構(gòu)成多達(dá)64級(jí)的矢量中斷系統(tǒng)。它的管理功能包括:

1)記錄各級(jí)中斷源請(qǐng)求,

2)判別優(yōu)先級(jí),確定是否響應(yīng)和響應(yīng)哪一級(jí)中斷,

3)響應(yīng)中斷時(shí),向CPU傳送中斷類型號(hào)。

8259的內(nèi)部結(jié)構(gòu)和引腳如圖6-1所示。

圖6-18259內(nèi)部結(jié)構(gòu)和引腳圖

8259的命令共有7個(gè),一類是初始化命令字,另一類是操作命令。8259的編程

就是根據(jù)應(yīng)用需要將初始化命令字ICW1-ICW4和操作命令字OCW1-OCW3分別

寫入初始化命令寄存器組和操作命令寄存器組。ICW1-ICW4各命令字格式如圖6-2

所示,OCW1-OCW3各命令字格式如圖6?3所示,其中OCW1用于設(shè)置中斷屏蔽操

作字,OCW2用于設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式的操作命令字,OCW3用于

設(shè)置和撤銷特殊屏蔽方式、設(shè)置中斷查詢方式以及設(shè)置對(duì)8259內(nèi)部寄存器的讀出命

令。

圖6-2(a)ICW1格式

圖6?2(b)ICW2格式

圖6?2(c)ICW3格式

圖6?2(d)ICW4格式

圖6?3OCW命令字格式

2.8259寄存器及命令的控制訪問(wèn)

在硬件系統(tǒng)中,8259僅占用兩個(gè)外設(shè)接口地址,在片選有效的情況下,利用

A0來(lái)尋址不同的寄存器和命令字。對(duì)寄存器和命令的訪問(wèn)控制如表6-1所示。

表6-18259寄存器及命令的訪問(wèn)控制

A0D4D3讀信號(hào)寫信號(hào)片選操作

0010讀出ISRJRR的內(nèi)容

1010讀出IMR的內(nèi)容

000100寫入OCW2

001100寫入OCW3

01X100寫入ICW1

1XX100寫入OCW1,ICW2,ICW3,ICW4

5、實(shí)驗(yàn)說(shuō)明及步驟

1.8259查詢中斷應(yīng)用實(shí)驗(yàn)

8259支持查詢方式檢測(cè)中斷請(qǐng)求。具體過(guò)程為:設(shè)置8259OCW3中的P位

為1即可執(zhí)行查詢命令,8259將下一個(gè)I/O讀命令視作一次中斷響應(yīng)。如果有中

斷請(qǐng)求,則置ISR中的相應(yīng)位并讀其優(yōu)先級(jí)。從0CW3寫操作到I/O讀操作期間

禁止中斷,讀出字節(jié)的最高位為1表示有中斷,最低3位(D2~D0)為最高優(yōu)先級(jí)中

斷請(qǐng)求源的編碼。查詢字格式如圖6-4所示。

圖6?48259OCW3查詢字格式

本實(shí)驗(yàn)要求使用這種方法編寫程序處理實(shí)驗(yàn)單元8259IRO和IR1請(qǐng)求的中斷,

IRO請(qǐng)求在屏幕上顯示字符“0”,IR1請(qǐng)求則在屏幕上顯示字符“1”以示中斷到來(lái)。

IR0和IR1分別用一個(gè)單次脈沖的上升沿模擬中斷產(chǎn)生。

圖6-58259杳詢中斷實(shí)驗(yàn)參考接線圖

實(shí)驗(yàn)步驟如下。

(1)實(shí)驗(yàn)接線圖如圖6-5所示,按圖接線。

(2)運(yùn)行Tdpit集成操作軟件,編寫程序,編譯、鏈接。

(3)運(yùn)行程序,按動(dòng)KK1+、KK2+按鍵,觀察中斷響應(yīng)是否正常。

2.點(diǎn)陣漢字滾動(dòng)顯示實(shí)驗(yàn)

利用實(shí)驗(yàn)單元中的8259控制器,可以對(duì)總線上的INTR進(jìn)行中斷源的擴(kuò)充。

將8259的INT連接到INTR,8259的8路中斷請(qǐng)求線IRO?IR7就成了單一INTR

中斷請(qǐng)求線的擴(kuò)充。這8路中斷源共用INTR的中斷矢量,共用INTR的中斷服務(wù)

程序。在INTR的中斷服務(wù)程序中通過(guò)對(duì)8259OCW3的查詢,以確定是IRO?IR7

中哪個(gè)產(chǎn)生中斷,然后轉(zhuǎn)到相應(yīng)的服務(wù)線程進(jìn)行處理。

本實(shí)驗(yàn)要求實(shí)現(xiàn)8259控制器IR0UR1兩路中斷都可以通過(guò)INTR向PC發(fā)起

中斷請(qǐng)求,實(shí)現(xiàn)點(diǎn)陣漢字(學(xué)生姓名)的滾動(dòng)顯示。用KK1+和KK2+模擬兩個(gè)中

斷源,在IRO對(duì)應(yīng)的服務(wù)程序中實(shí)現(xiàn)點(diǎn)陣的左右滾動(dòng)顯示和停止,在IR1對(duì)應(yīng)的服

務(wù)程序中實(shí)現(xiàn)點(diǎn)陣漢字的上下滾動(dòng)顯示和停止。實(shí)驗(yàn)步驟如下。

(1)實(shí)驗(yàn)接線圖如圖5-9和圖6-6所示,按圖接線,其中點(diǎn)陣LED單元使用

IOY0作為片選信號(hào)CS的輸入,8259單元使用10Y1作為片選信號(hào)CS的輸入,

具體地址可以通過(guò)Tdpit集成操作軟件中下拉菜單【查看】一〉【端口資源】獲得。

(2)運(yùn)行Tdpit集成操作軟件,編寫程序,編譯、鏈接。

(3)運(yùn)行程序,按動(dòng)KK1+、KK2+按鍵,觀察點(diǎn)陣LED顯示是否正常。

圖6?68259中斷實(shí)現(xiàn)點(diǎn)陣滾動(dòng)顯示實(shí)驗(yàn)參考接線圖

實(shí)驗(yàn)七8254定時(shí)/計(jì)數(shù)器應(yīng)用實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1.掌握8254的工作方式及應(yīng)用編程。

2.掌握8254典型應(yīng)用電路的接法。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套,示波器一臺(tái)。

3、實(shí)驗(yàn)內(nèi)容

1.計(jì)數(shù)應(yīng)用實(shí)驗(yàn)。

編寫程序,應(yīng)用8254的計(jì)數(shù)功能,使用單次脈沖模擬計(jì)數(shù),使每當(dāng)按動(dòng),KK1

+'5次后,產(chǎn)生一次計(jì)數(shù)中斷,并在屏幕上顯示一個(gè)字符,5、

2.定時(shí)應(yīng)用實(shí)驗(yàn)。

編寫程序,應(yīng)用8254的定時(shí)功能,產(chǎn)生一個(gè)類似于SOS(三短音-三長(zhǎng)音■三短

音)的信號(hào),通過(guò)電子發(fā)聲單元實(shí)現(xiàn)。

4、實(shí)驗(yàn)原理

8254是Intel公司生產(chǎn)的可編程間隔定時(shí)器。是8253的改進(jìn)型,比8253具有更

優(yōu)良的性能。8254具有以下基本功能:

(1)有3個(gè)獨(dú)立的16位計(jì)數(shù)器。

(2)每個(gè)計(jì)數(shù)器可按二進(jìn)制或十進(jìn)制(BCD)計(jì)數(shù)。

(3)每個(gè)計(jì)數(shù)器可編程工作于6種不同工作方式。

(4)8254每個(gè)計(jì)數(shù)器允許的最高計(jì)數(shù)頻率為10MHz(8253為2MHz)。

(5)8254有讀回命令(8253沒(méi)有),除了可以讀出當(dāng)前計(jì)數(shù)單元的內(nèi)容外,

還可以讀出狀態(tài)寄存器的內(nèi)容。

(6)計(jì)數(shù)脈沖可以是有規(guī)律的時(shí)鐘信號(hào),也可以是隨機(jī)信號(hào)。計(jì)數(shù)初值公式為:

n=fcLKi:foUTi

其中fcLKi是輸入時(shí)鐘脈沖的頻率,foUTi是輸出波形的頻率。

圖7-1是8254的內(nèi)部結(jié)構(gòu)框圖和引腳圖,它是山與CPU的接口、內(nèi)部控制電路

和三個(gè)計(jì)數(shù)器組成。

圖7-18254的內(nèi)部接口和引腳

8254的工作方式如下述:

(1)方式0:計(jì)數(shù)到0結(jié)束輸出正躍變信號(hào)方式。

(2)方式1:硬件可重觸發(fā)單穩(wěn)方式。

(3)方式2:頻率發(fā)生器方式。

(4)方式3:方波發(fā)生器。

(5)方式4:軟件觸發(fā)選通方式。

(6)方式5:硬件觸發(fā)選通方式。

8254的控制字有兩個(gè):一個(gè)用來(lái)設(shè)置計(jì)數(shù)器的工作方式,稱為方式控制字;另

一個(gè)用來(lái)設(shè)置讀回命令,稱為讀回控制字。這兩個(gè)控制字共用一個(gè)地址,由標(biāo)識(shí)位

來(lái)區(qū)分。控制字格式如表7-1~7-3所示。

表7-18254的方式控制字格式

表7-28254讀出控制字格式

表7-38254狀態(tài)字格式

8254實(shí)驗(yàn)單元電路圖如下圖所示:

圖7-28254實(shí)驗(yàn)電路原理圖

5、實(shí)驗(yàn)步驟

1.計(jì)數(shù)應(yīng)用實(shí)驗(yàn)

編寫程序,將8254的計(jì)數(shù)器0設(shè)置為方式3,計(jì)數(shù)值為十進(jìn)制數(shù)4,用單次脈沖

KK1+作為CLK0時(shí)鐘,OUTO連接INTR,每當(dāng)KK1+按動(dòng)5次后產(chǎn)生中斷請(qǐng)求,在

屏幕上顯示字符“5”。實(shí)驗(yàn)步驟如下:

(1)實(shí)驗(yàn)接線如圖7-3所示。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)內(nèi)容,編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,按動(dòng)KK1+產(chǎn)生單次脈沖,觀察實(shí)驗(yàn)現(xiàn)象。

(4)改變計(jì)數(shù)值,驗(yàn)證8254的計(jì)數(shù)功能。

圖7-38254計(jì)數(shù)應(yīng)用實(shí)驗(yàn)接線圖

2.定時(shí)應(yīng)用實(shí)驗(yàn)

編寫程序,將8254的計(jì)數(shù)器設(shè)置為方式3,用信號(hào)源作為CLK2時(shí)鐘,將相應(yīng)

一種頻率的計(jì)數(shù)初值寫入計(jì)數(shù)器,就可產(chǎn)生對(duì)應(yīng)頻率的方波,計(jì)數(shù)初值的計(jì)算公式

如前所述。長(zhǎng)短音的控制可以通過(guò)軟件延時(shí)來(lái)實(shí)現(xiàn)。

電子發(fā)聲電路如圖7-4所示。實(shí)驗(yàn)步驟如下:

圖7-4電子發(fā)聲單元電路圖

(1)實(shí)驗(yàn)接線圖如圖7-5所示,按圖接線。

(2)運(yùn)行Tdpit集成操作軟件,根據(jù)實(shí)驗(yàn)要求編寫實(shí)驗(yàn)程序,編譯、鏈接。

(3)運(yùn)行程序,聽(tīng)揚(yáng)聲器發(fā)出的聲音是否正確。

圖7-58254定時(shí)應(yīng)用實(shí)驗(yàn)接線圖

實(shí)驗(yàn)八16550串行控制器應(yīng)用實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/p>

1)掌握16550的工作方式及應(yīng)用。

2)了解有關(guān)串口通訊的知識(shí)。

3)掌握使用16550實(shí)現(xiàn)雙機(jī)通訊的軟件編程和電路連接。

2、實(shí)驗(yàn)設(shè)備

PC微機(jī)一臺(tái)、TD-PIT++實(shí)驗(yàn)系統(tǒng)一套。

3、實(shí)驗(yàn)內(nèi)容

與PC串口通訊應(yīng)用實(shí)驗(yàn)。編寫程序完成PC機(jī)串口與實(shí)驗(yàn)裝置串口的通訊,由

PC機(jī)串口1發(fā)數(shù),實(shí)驗(yàn)裝置串口接收,當(dāng)接收完畢后,再由實(shí)驗(yàn)裝置將接收的結(jié)果

通過(guò)串口發(fā)送給PC機(jī),以此來(lái)驗(yàn)證通訊是否正常。

4、實(shí)驗(yàn)原理

140爛

DO------239

16550是一種連接任何類型虛擬串行接口的D1------338

D2——4DCD

37三

可編程通信接口,與Intel微處理器完全兼容的使D3——536DSR

D4——6crs

35MR

7三

用非常廣泛的異步接收器/發(fā)送器(UART)。它D5------34OUTl

D6——833DTR

9

D7------37Rrs

內(nèi)置了16字節(jié)的FIFO緩沖,最大通訊速率可達(dá)RCLK------13*三OUT2

101

RXD------3INTR

110RXRD

115Kb/s,是現(xiàn)代基于微處理器設(shè)備包括PC機(jī)TXD------229鬻

1三

CSO------1328

CS1——1427

CS2—:56

12二

BAUDOUT—:1625瞬

XIN----1-7-24

XOUT----1-8-23三

WR-7922

WR-----0-21

GND------

圖8-116550引腳圖

和許多調(diào)制解調(diào)器的最普遍的通信接口。1655。的弓|腳如圖8-1所示,其內(nèi)部結(jié)構(gòu)

如圖8-2所示。

1.端口地址的使用

16550內(nèi)部有11個(gè)寄存器,在芯片選擇有效的前提下,由芯片的寄存器選擇

輸入線A2,A1和A。來(lái)確定訪問(wèn)的寄存器,芯片中采用兩條措施來(lái)解決端口地址

少的問(wèn)題(只有8個(gè)地址)。

圖8-216550的內(nèi)部結(jié)構(gòu)圖

(1)保持寄存器和接收數(shù)據(jù)寄存器共用一個(gè)地址,以“寫入”訪問(wèn)前者、"讀出''

訪問(wèn)后者加以區(qū)分。

(2)除數(shù)寄存器的高字節(jié)與中斷允許寄存器使用相同地址,高字節(jié)和接收數(shù)據(jù)

寄存器、發(fā)送保持寄存器使用相同的地址,為了區(qū)分,借用線路控制寄存器的最高

位DLAB位來(lái)區(qū)分。訪問(wèn)除數(shù)寄存器時(shí),令DLAB位為“「;訪問(wèn)接收數(shù)據(jù)寄存器、

發(fā)送保持寄存器和中斷允許寄存器時(shí),則將DLAB位置“0”。具體說(shuō)明如表8?1所示。

表8-116550內(nèi)部寄存器地址及其選擇方法

2.寄存器控制字說(shuō)明

(1)線路控制寄存器(LCR),主要用于指定異步串行通信的數(shù)據(jù)格式。見(jiàn)表

8-2o

表8-2LCR格式

(2)線路狀態(tài)寄存器(LSR),主要是向處理器提供有關(guān)數(shù)據(jù)傳輸?shù)臓顟B(tài)。見(jiàn)

表8-3。

表8-3LSR格式

(3)波特率除數(shù)寄存器,用該寄存器設(shè)置串行數(shù)據(jù)的傳送波特率。

除數(shù)寄存器值=基準(zhǔn)時(shí)鐘頻率+(16X波特率)

16550芯片輸入的基準(zhǔn)時(shí)鐘頻率為,若波特率為9600b/s,則除數(shù)寄存器值

為000CH,DLH中應(yīng)填OOH,DLL中應(yīng)填0CH。16550常用波特率參數(shù)見(jiàn)表8-4。

表8-4常用的波特率參數(shù)表

速率(b/s)波特率高八位波特率低八位

5009HOOH

30001H80H

6iX)(X)HCOH

240000H30H

4800OOH18H

9600OOHOCH

19200OOH06H

38400OOH()3H

5760000H02H

11520000H01H

(4)中斷允許寄存器(IER),1655。共有4級(jí)中斷,按優(yōu)先級(jí)從高到低依次為:

接收出錯(cuò)中斷、接收緩沖器滿中斷、發(fā)送保持寄存器空中斷和MODEM輸入狀態(tài)改

變中斷。這些中斷的允許或屏蔽由IER來(lái)控制。見(jiàn)表8-5。

表8?5IER格式

(5)中斷標(biāo)識(shí)寄存器(IIR),當(dāng)16550處于中斷處理方式,IIR指出有無(wú)待處理

的中斷發(fā)生及其類型,并且封鎖比此類優(yōu)先級(jí)低的所有類型中斷。見(jiàn)表8-6。

表8-6IIR格式

(6)MODEM控制寄存器(MCR),MCR控制芯片的4個(gè)引腳的輸出和芯片的

環(huán)路檢測(cè)。見(jiàn)表8-7。

表8-7MCR格式

(7)MODEM狀態(tài)寄存器(MSR),MSR反映UART與通信設(shè)備(如MODEM)

之間聯(lián)絡(luò)信號(hào)的當(dāng)前狀態(tài)以及這些信號(hào)的變化情況。見(jiàn)表8-8。

表88MSR格式

D7D6D5D4D3D2D1D0

RLSDRIDSRCTS△RLSDTERI△DSR△CTS

收到“接收到“振收到“數(shù)收到“清RLSD位收到“振DSR位CTS位

收線載鈴指示“傳機(jī)就除發(fā)送“發(fā)生改玲指示發(fā)生變發(fā)生變

波檢測(cè)緒”變后沿“化化

說(shuō)明:D7=l表示輸入引腳RLSD=0,MODEM收到來(lái)自電話線的載波信號(hào)。

D6=l表示輸入引腳RI=0,MODEM收到振鈴信號(hào)。

D5=l表示輸入引腳DSR=0,MODEM做好了發(fā)送準(zhǔn)備,請(qǐng)16550準(zhǔn)

備接收。

D4=l表示輸入引腳CTS=O,MODEM做好了接收準(zhǔn)備,16550可以

發(fā)送數(shù)據(jù)。

D3,D1,DO位為“1”是說(shuō)明在上次讀取MSR之后,MSR的D7,D5,D4中

相應(yīng)位發(fā)生了變化。

D2位為“1”是說(shuō)明輸入到芯片的RE由邏輯"1”狀態(tài)變成邏輯”(F狀態(tài)。

(8)FIFO控制寄存器(FCR),16550增力口了一個(gè)FIFO緩沖器,用于緩沖正在

發(fā)出或接收的數(shù)據(jù),這是早期的UART器件所沒(méi)有的。FCR各位意義見(jiàn)表8-9。

表8-9FCR格式

位意義位意義

0允許FIFO緩沖器工作4保留

1清除接收FIFO緩沖器5不用

2清除發(fā)送FIFO緩沖器6接收端中斷觸發(fā)器水平(LSB)

3DMA方式7接收端中斷觸發(fā)器水平(MSB)

5、實(shí)驗(yàn)步驟

用串行通訊電纜將PC機(jī)COM1與實(shí)驗(yàn)系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論