微機系統與接口技術實驗指導書_第1頁
微機系統與接口技術實驗指導書_第2頁
微機系統與接口技術實驗指導書_第3頁
微機系統與接口技術實驗指導書_第4頁
微機系統與接口技術實驗指導書_第5頁
已閱讀5頁,還剩22頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

微機系統與接口技術

實驗指導書

東南大學電子科學與工程學院

2008年2月

目錄

一、概述...........................................................5

二、實驗裝置基本組成...............................................6

三、實驗臺結構.....................................................12

I、I/O地址譯碼電路......................................................12

2、總線插孔..............................................................12

3、時鐘電路..............................................................12

4、邏輯電平開關電路.......................................................12

5、LED顯示電路.........................................................13

6、七段數碼管顯示電路..................................................13

7、單脈沖電路............................................................14

8、邏輯筆................................................................14

9、維電器及驅動電路....................................................14

10、復位電路.............................................................14

11、接口集成電路.........................................................15

12、跳線開關(JP).............................................................15

13、+5V電源插針........................................................15

14、通用集成電路插座.....................................................15

15、數字電路實驗區.......................................................15

16、接線端子.............................................................15

17、50線總線插座信號安排...............................................16

18、直流電源開關(KI)和存儲器地址選擇開關(K2).....................16

19、使用外加直流電源注意事項..........................................16

2()、高位地址選擇電路....................................................16

四、實驗......................................................................18

實驗一、I/O地址譯碼.......................................................20

實驗二、簡單并行接口......................................................21

實驗三、可編程定時器/計數器(8253)..........................................23

實驗四、可編程并行接口(一)(8255方式())...............25

實驗五、七段數碼管.........................................................26

實驗六、競賽搶答器.........................................................29

實驗七、交通燈控制實驗....................................................31

實驗八、中斷...............................................................32

實驗九、可編程并行接口(二)(8255方式1).................................36

實驗十、數/模轉換器.......................................................39

實驗十一、模/數轉換器.......................................................39

實驗十二、步進電機控制實驗.................................................60

實驗十三、數字溫度檢測實驗.................................................79

附錄1、查看PCI卡資源的方法........................................97

附錄2、匯編語言使用方法...........................................97

一、概述

“TPC-2005通用32位微機接口(PCI)實驗系統”是清華大學科教儀器廠推出的微機硬件實驗

教學設備。該教學實驗系統具有實驗項目多、內容全面、開放能力和靈活性強等特點。它不僅適

用于一些典型的微機接口教學實驗,而且還是一個為學生在提供了鍛煉學生動手能力,發揮創造

才能和開展創新活動的計算機硬件平臺。該系統主要有以下特點:

★實驗電路連接采用了國家專利、獲獎產品“自鎖緊”插座及導線,消除了連線接觸不良

的現象。

★電路設計中增加了多項保護措施,可有效的避免由于學生實驗時錯接、錯編程損壞主機或

接口集成電路的現象。

★實驗臺?上增加了邏輯筆、通用IC插座等電路。可作為數字電路實驗儀器使用,也可以用于

學生畢業設計、科技創新活動及科研開發。

儀器硬件包括接口卡、實驗臺(箱)兩部分組成,兩者之間通過50線扁平電纜相連。接口卡

可以插入PC系列微機中任意一個PCI擴展插槽,它的主要功能是將與實驗有關的總線信號加以驅

動后引到實驗臺上,同時引出信號還有與“中斷”和“DMA”實驗操作有關的信號及+5V、+12V、

T2V電源。實驗臺上設有I/O地址譯碼電路、總線插孔、接口實驗常用集成電路、外圍電路及通

用IC插座等部分組成。外圍電路包括邏用電平開關電路、1ED顯示電路、時鐘電路、單脈沖電路、

邏輯筆、復位電路、七段數碼管顯示電路、基本門電路、維電器及步進電機、小直流電機的驅動

電路。

二、實驗裝置基本組成

(1)硬件:PC機;PCI接口卡;實驗箱;50線扁平電纜:自鎖緊導線。本實驗裝置在PC

系統中的位置如圖所示(虛線框內):

(2)軟件:DOS操作系統的匯編系統;TPC-2003A集成開發環境。

二級

三、實驗平臺結構CPU緩存

1、I/O地址譯碼電路

如圖-3所示,地址空間cofuj-+zio夕短少vc、其地址分別是280H?

總線

287H:288H?28FH;290H~\p“…飛HOST?2B0H?2B7H:2B8H?

2BFH,8根譯碼輸出線在實驗臺“I/O?廣處分別由“自鎖緊”插孔引出,供實驗選用。

2、總線插孔-----

采用插座在P主存);地址總線一不一

顯卡主橋網卡

讀、寫信中斷iiA請求怡&DKW;山A響應信號、

信號,供學可下各種接口實驗電療用。

3、?我1由蚣

PCI總線

驗使用〉

4、邏輯電'①

如圖-5所;T聲卡下彳擴展總線?K0,i開關撥至I“1”他J酗部關斷升,輸出高

平,電路中串投邇仍殿擴艇路不百擇

電平,向下打至,開橋J1mH

1

同+5Y、GND相連,可有效地防k聲J不IL、誤締程損壞集成電路理%

5、LED顯和路

如圖《□

ISA總線ISA-like50芯教學實驗總線

為“1”時MT,為“0”盯火。

6、七段數碼管顯示電路

TPC-2005A

微機實驗箱

I_______________________________________

如圖-7所示,實驗臺上設有兩個共陰極七段數碼管及驅動電路,段碼為同相驅動器,位碼

為反相驅動器,從段碼與位碼的驅動器輸入端(段碼輸入端:a、b、c、d、e、f、g、dp,位碼

輸入端:si、s2)輸入不同的代碼即可顯示不同數字或符號。

7、單脈沖電路

如圖-8所示,采用RS觸發器產生,實驗者每按一次開關即可以從兩個插座上分別輸出一個

正脈沖及負脈沖,供“中斷”、“DMA”、“定時器/計數器”等實驗使用。

8、邏輯筆

如圖-9所示,當輸入端Ui接高電平時紅燈(D2)亮:接低電平時綠燈亮。

9、繼電器及驅動電路

如圖10所示,實驗臺上設有一個+5V直流繼電器及相應的驅動電路,當其開關量輸入端

輸入數字量“1”時,繼電器動作:常開觸點閉合、常閉觸點斷開。通過相應的實驗使學生了解

開關量控制的一般原理。

10、復位電路

如圖T1所示,能在上電時,或按下復位開關S2后產生一個高電平的復位信號供8255、8251

等接口芯片使用。

11、接口集成電路

實驗臺上有微機原理硬件實驗最常用接口電路芯片,包括:可編程定時器/計數器(8253)、

可編程并行接I」(8255)、數/模轉換器(DACO832)、模/數轉換器(ADC0809),這里芯片與CPU

相連的引線除片選信號CS外都已連好,與外界連接的關鍵引腳在芯片周圍用“自鎖緊''插座引出,

供學生實驗時使用。其中數/模轉換器附有雙極性輸出,模/數轉換器附有雙極性輸入插座。具體

電路可見下面重驗說明.

12、跳線開關(JP)

實驗臺上共有5個跳線開關,其中Ja、Jb、Jc在實驗臺的左上角,50線總線插座的左方。

Ja用來選擇用主機電源還是用外加電源的,當用主機電源時,應將JA上+5V、+12V、-12V三個短

路片插好。若想使用外加電源,必須首先將JA上的三個短路片全部拔掉,才能將外接電源加入。

JB和JC是在使用ISA卡時來選擇實驗類型的,I/O實驗時JB、JC上的短路片都應插在標有“T/O”

的位置。做存儲器實驗時,短路片應插在標有“MEM”的位置。做DMA實驗時JB應插在“I/O”位

置,JC應插在DMA位置。實驗臺出廠時短路片在I/O實驗位置。

實驗臺上另外兩個跳線開關為JP2和JP3,在實驗臺的左下角,分別用于模/數轉換器模擬量

輸入極性選擇,將JP2的1、2短路時IN2(J2)可輸入雙極性電壓(一5V?+5V),2、3短路為

單極性(0?+5V),JP3用于選擇IN1的輸入極性,方法與JP2相同。

13、+5V電源插針

為了減少主機+5V電源的負擔和各主要芯片的安全,在主要接口芯片的左上角都有相應的電

源連接插針(標記為+5V)當實驗需要該芯片時,用短路塊短接插針即可接通+5V電源。對用

不到的芯片可將短路片拔掉,以確保芯片安全。

14、通用集成電路插座

實驗臺上設有4個通用數字集成電路插座,其中插座A、B為20P,插座D為40P,插座D可

以插入一個24?40腳的集成電路芯片或者2個8?20腳的集成電路芯片。每個插座引腳附近都有

相應的“自鎖緊”插座,部分實驗(簡單并行接口、DMA、串行通訊、集成電路測試)電路是利用

這些插座搭試的。要求高的學校可以讓學生自己搭試更多的實驗,以提高學生動手能力。利用這

些插座可以開發新的實驗,也可以進行數字電路實驗,及學生畢業設計。自鎖緊插座插入導線時,

應稍加力并延順時針方向旋轉一卜,才能保證接觸良好,拔出時,應先逆時針方向旋轉待插頭完

全松開后,再向上拔出。

15、數字電路實驗區

實驗臺上有一塊數字電路實驗區,設有三種基本門電路(與、或、非)及D觸發器,供學生

在接口實驗或數字電路實驗時直接使用。

16、接線端子

實驗臺上設有J7,J8共2個接線端子。"用于外接用戶開發的實驗板,J7是一個20芯通用

插座,用于外接用戶開發的實驗板,本系統中8279鍵盤顯示實驗板就從此插頭引出。J8為用戶

外接開發實驗板時外接板的片選信號端。J7各引腳信號安排如下:

17、50線總線插座信號安排

18、直流電源開關(K1)和存儲器地址選擇開關(K2)

實驗臺上有一直流電源開關(K1),在實驗臺的左上角。在主機電源打開后,再打開

實驗臺上開關K1,實驗臺才會加電。另外,實驗臺上還有一個四位撥動開關K2,在實驗

臺8255芯片的右方。K2是在做存儲器實驗時選擇存儲器地址使用的。

19、使用外加直流電源注意事項:

《1》用戶可以使用主機電源,也可以使用外加直流電源,主機電源通過總線擴展卡引入到

文瞼臺的50芯插座上,再通過短路子JA接到電源開關上。該文驗臺山廠時是按使用主機電源

連接的。

《2》用戶若想使用外加電源。必須首先將JA上的三個短路片全部拔掉,將主機電源斷開,

才能將外部電源接入。

《3》用戶電源通過外接電源插座J0接到實驗臺上。插入以前應仔細檢查電源插頭上各路

電源與.J0上標注的是否相同,如不相同應修改電源插頭,否則會損壞實驗臺。

《4》外接電源插入以前,應檢查各路電源輸出是否正確,如不正確應修改或更換電源。

《5》以上各項都正常后,打開電源即可進行實驗。

20、高位地址選擇電路

如圖所示,實驗臺上設有一高位地址選擇電路,將高位地址線A19、A18、A17、

.A16與設置開關K2的設置值進行比較,都相同時MEMCS輸出低電平。因此可以選擇出16

個64K的地址空間。

譯碼表如下:

1234譯碼地址1234譯碼地址

10NONONON00000H9OFFONONON80000H

2ONONONOFF10000H10OFFONONOFF9000011

3ONONOFFON20000H11OFFONOFFONAOOOOII

4ONONOFFOFF30000H12OFFONOFFOFFBOOOOH

5ONOFFONON400001113OFFOFFONONCOOOOII

6ONOFFONOFF50000H14OFFOFFONOFFDOOOOH

7ONOFFOFFON600001115OFFOFFOFFONEOOOOH

8ONOFFOFFOFF70000H16OFFOFFOFFOFFFOOOOII

四、實驗

實驗一I/O地址譯碼

一、實驗目的

掌握I/O地址譯碼電路的工作原理。

二、實驗原理和內容

實驗電路如圖11所示,其中74LS74為D觸發器,可直接使用實驗臺上數字電路實驗區的D

觸發器,74LS138為地址譯碼器。譯碼輸出端Y0-Y7在實驗臺上“I/O地址''輸出端引出,每個

輸出端包含8個地址,Y0:280H?287H,Yl:288H?28FH,……當CPU執行1/0指令且地址在

280H?2BFH范圍內,譯碼楷選中,必有?根譯碼線輸出負脈沖。

例如:執行下面兩條指令,Y4輸出一個負脈沖;

MOVDX,2A0H

OUTDX,AL(或INAL,DX)

執行下面兩條指令,Y5輸出一個負脈沖。

MOVDX,2A8H

OUTDX,AL(或INAL,DX)

利用這個負脈沖控制L7閃爍發光(鳧、滅、克、滅、一),時間間隔通過軟件延時實現。

三、編程提示

1、實驗電路中D觸發器CLK端輸入脈沖時、上升沿使Q端輸出高電平L7發光,CD端加低電平L7

滅。

2、山于TPC卡使用PCI總線,所以分配的10地址每臺微機可能都不同,編程時需要了解當前

的微機使用那段10地址并進行設置.,獲取方法請參看本書附件1文章中的介紹。

四、思考題:

I、若使用地址A2控制74LS138的E2端。試寫出Y0?Y7的地址范圍。

2、試編寫一段程序,使L1?L7輪流發光循環顯示并以實驗驗證。

實驗二簡單并行接口

一、實驗目的

掌握簡單并行接口的工作原理及使用方法。

二、實驗內容

1、按下面圖12簡單并行輸出接口電路圖連接線路(74LS273插通用插座,74LS32用實驗臺

上的“或門”)o74LS273為八D觸發器,8個D輸入端分別按數據總線D0?D7,8個Q輸出端接

LED顯示電路L0?L7。

2、編程從鍵盤輸入一個字符或數字,將其ASCH碼通過這個輸出接口輸出,根據8個發光二

極管發光情況驗證正確性。

3、按下面圖13簡單并行輸入接口電路圖連接電路(74LS244插通用插座,74LS32用實驗

臺上的“或門”)。74LS244為八緩沖器,8個數據輸入端分別接邏輯電平開關輸出K0-K7,8

個數據輸出端分別接數據總線DO?D7。

4、用邏輯電平開關預置某個字母的ASCI【碼,編程輸入這個ASCH碼,并將其對應字母在

屏幕上顯示出來。

三、編程提示

1、卜述并行輸出接口的地卅為2A8H,并行愉入接口的地加為2A0H.通過卜述并行接口電路輸

出數據需要3條指令:

MOVAL,數據

MOVDX,2A8H

OUTDX,AL

通過上述并行接口輸入數據需要2條指令:

MOVDX,2ADH

TNAL,DX

2、參考流程圖

實驗三可編程定時器/計數器(8253)

一、實驗目的

掌握8253的基本匚作原理和編程方法。

二、實驗內容

1.按圖16虛線連接電路,將計數器0設置為方式0,計數器初值為N(NWOFH),用手動逐個

輸入單脈沖,編程使計數值在屏幕上顯示,并同時用邏輯筆觀察OUTO電平變化(當輸入N+1個脈

沖后0UT0變高電平)c

2.按圖17連接電路,將計數器0、計數器1分別設置為方式3,計數初值設為1000,用邏輯筆

觀察om輸出電平的變化(頻率1HZ)。

三、編程提示

1、8253控制寄存器地址283H

計數器0地址280H

計數器1地址281H

CLKO連接時鐘1MH2

2、參考流程圖(見圖18、19):

四、思考題:

1、在實驗內容一的基礎匕修改程序,使屏幕上僅顯示奇數(即只是顯示F、D、B、9、7、5、

3、1),并以實驗驗證。

實驗四、可編程并行接口(一)(8255方式0)

一、實驗目的

掌握8255方式0的工作原理及使用方法。

二、實驗內容

1.實驗電路如圖20,8255c口接邏輯電平開關K0?K7,A口接LED顯示電路L0?L7。

2.編程從8255c口輸入數據,再從A口輸出.

三、編程提示

1、8255控制寄存器端口地址28BH

A口的地址288H

C口的地址28AH

2、參考流程圖(見圖21):

實驗五七段數碼管

一、實驗目的

掌握數碼管顯示數字的原理

二、實驗內容

1.靜態顯示:按圖22連接好電路,將8255的A口PAO?PA6分別與七段數碼管的段碼驅動輸

入端a?g相連,位碼驅動輸入端S1接+5V(選中),SO、dp接地(關閉)。編程從鍵盤輸入一位十

進制數字(。?9),在七段數碼管上顯示出來。

2.動態顯示:按圖23連接好電路,七段數碼管段碼連接不變,位碼驅動輸入端SI,SO接

8255C口的PCI,PCOo編程在兩個數碼管上顯示“56”。

3.動態顯示(選作):使用圖23的電路,編程在兩個數碼管上循環顯示“00-99”。

三、編程提示

1、實驗臺上的七段數瑪管為共陰型,段碼采用同相驅動,輸入端加高電平,選中的數碼管

亮,位碼加反相驅動器,位碼輸入端高電平選中。

_____________________________________________________2、七段數碼管的字型

顯示字形gefdcba段碼

001111113fh

1000011006h

210110115bh

310011114fh

4110011066h

511011016dh

611111017dh

7000011107h3、參考流程圖(見圖

811111117fh24)

四、思考題:

911011116fh

1、在共陰極條件

下,編程從鍵盤輸入一個字母(A?F),在七段數碼管上顯示出來,并以實驗驗證之,

2、動態顯示過程中,能否不通過延時來保證56穩定顯示。

3、請寫出方式1輸入時A口和B口的STB、IBF、INTR信號分別書由哪幾個引腳提供。

4、動態掃描間隔時間的長短對顯示效果有何影響?

實驗六競賽搶答器

一、實驗目的

1、了解微機化競賽搶答器的基本原理。

2、進一步學習使用并行接口。

二、實驗內容

圖27為競賽搶答器(模擬)的原理圖,邏輯開關K0?K7代表競賽搶答按鈕0?7號,當某

個邏輯電平開關置“1”時,相當某組搶答按鈕按下。在七段數碼管上將其組號(0?7)顯示出來,

并使微機揚聲器響一下。

三、編程提示

設置8255為C口輸入、A口輸出,讀取C口數據,若為0表示無人搶答,若不為0則有人搶

答。根據讀取數據可判斷其組號。從鍵盤上按空格鍵開始F?輪搶答,按其它鍵程序退出。

四、參考流程圖(見圖28)

實驗七交通燈控制實驗

一.實驗目的

通過并行接口8255實現十字路口交通燈的模擬控制,進一步掌握對并行口的使用。

二.實驗內容

如圖-29,L7、L6、L5;乍為南北路口的交通燈與PC7、PC6、PC5相連,L2、LI、L0作為東西

路口的交通燈與PC2、PCI、PC0相連。編程使六個燈按交通燈變化規律亮滅。

三.編程提示:十字路口交通燈的變化規律要求:

(1)南北路口的綠燈、東西路口的紅燈同時亮30秒左右。

(2)南北路口的黃燈閃爍若干次,同時東西路3的紅燈繼續亮。

(3)南北路口的紅燈、東西路口的綠燈同時亮30秒左右。

(4)南北路口的紅燈繼續亮、同時東西路口的黃燈亮閃爍若干次。

(5)轉(1)重復。

四、參考流程圖

四、思考題:

1、討論延時時間的長短對顯示效果有何影響?。

2、在方式I時,INTA、INTB作為中斷使能信號,在輸入輸出時,分別有由C口的哪二位進

行置位何復位的。

實驗八中斷

一、實驗目的

1、掌握PC機中斷處理系統的基本原理。

2、學會編寫中斷服務程序。

二、實驗原理與內容

1、實驗原理

PC機用戶可使用的硬件中斷只有可屏蔽中斷,由8259中斷控制器管理。中斷控制器用于接

收外部的中斷請求信號,經過優先級判別等處理后向CPU發出可屏蔽中斷請求。TBMPC、PC/XT

機內有一片8259中斷控制器對外可以提供8個中斷源:

中斷源中斷類型號中斷功能

IRQO08H時鐘

IRQ109H鍵盤

IRQ2OAII保留

IRQ3OBH串行口2

IRQ4OCH串行口1

IRQ5ODH硬盤

IRQ6OEH軟盤

IRQ7OFH并行打印機

8個中斷源的中斷請求信號線IRQ0-IRQ7在主機的62線ISA總線插座中可以引出,系統已

設定中斷請求信號為“邊沿觸發”,普通結束方式。對于PC/AT及286以上微機內乂擴展了一片

8259中斷控制,IRQ2用于兩片8259之間級連,對外可以提供16個中斷源:

中斷源中斷類型號中斷功能

IRQ8070H實時時鐘

IRQ9071H用戶中斷

IRQ1007211保留

IRQ11073H保留

IRQ12074H保留

IRQ13075H協處理器

IRQ14076H硬盤

IRQ15077H保留

PCI總線中的中斷線只有四根,INTA#、TNTB#、INTC#、INTD#,它們需要通過P&P的設置來

和某一根中斷相連接才能進行中斷申請。

2、實驗內容

實驗電路如圖31,直接用手動產單脈沖作為中斷請求信號(只需連接一根導線)。要求每按

一次開關產生一次中斷,在屏幕上顯示一次“TPCpcicareInterrupt",中斷10次后程序退出。

三、編程提示

1.由于9054的驅動程序影響直寫9054芯片的控制寄存器,中斷實驗需要在純DOS的環境中才

能正常運行。這里指的純DOS環境是指微機啟動時按F8鍵進入的DOS環境。WINDOWS重啟進入MSDOS

方式由丁系統資源被重新規劃過,所以也不能正常實驗。

2.由十TPC卡使用PCI總線,所以分配的中斷號每臺微機可能都小同,編程時需要了解當前的

微機使用那個中斷號并進行設置,獲取方法請參看匯編程序使用方法的介紹。(也可使用自動獲

取資源分配的程序取得中斷號)

3.在純DOS環境下,有些微機的BIOS設置中有將資源保留給TSA總線使用的選項,致使在純DOS

環境(WINDOWS環境下不會出現此問題)下PCI總線無法獲得系統資源,也就無法做實驗,這時需

要將此選項修改為使用即插即用。

4.在純DOS環境下,有些微機的BIOS設置中有使用即插即用操作系統的選項,如果在使用即

插即用操作系統狀態下,BIOS將不會給TPC卡分配系統資源,致使在純DOS環境(WINDOWS環境下

不會出現此問題)下PCI總線無法獲得系統資源,也就無法做實驗,這時需要將此選項修改為不

使用即插即用操作系統。

5.由于TPC卡使用9054芯片連接微機,所以在編程使用微機中斷前需要使用9054的中斷功能,

代碼如下:

movdx,ioport_cer.t+68h;設置tpc卡中9054芯片io口,使能中斷

inax,dx

orax,0900h

outdx,ax

其中IOPORT一CENT是9051芯片寄存器組的I/O起始地址,每臺微機可能都不同,編程時需要了

解當前的微機使用哪段并進行設置.,獲取方法請參看本書結尾部分的介紹。(也可使用自動獲取

資源分配的程序取得),+68H的偏移是關于中斷使能的寄存器地址,設置含義如下:

設置INTCSR(68H)寄存器,中斷模式設置

BITS功能

81:能夠產生PCI中斷

0:禁止產生PCI中斷

111:能夠LOCAL端輸入的中斷送到PCI端

0:禁止LOCAL端輸入的中斷送到PCI端

其它位為零即可,更多內容參看9054芯片數據手冊

程序退出前還要關閉9054的中斷,代碼如下:

movdx,ioport_cent+68h;設置tpc卡中9054芯片io口,關閉中斷

inax,dx

andax,Of7ffh

outdx,ax

6.PC機中斷控制器8259的地址為20H、21H,編程時要根據中斷類型號設置中斷矢量,8259

中斷屏蔽寄存器IMR對應位要清零(允許中斷),中斷服務結束返回前要使用中斷結束命令:

MOVAL,20H

OUT2011,AL

中斷結束返回DOS時應將IMR對應位置1,以關閉中斷。

四、參考流程圖

實驗九可編程并行接口(二)(8255方式1)

一、實驗目的

1.掌握8255工作方式1時的使用及編程。

2.進一步掌握中斷處理程序的編寫。

二、實驗內容

1.按圖33(A)8255方式1的輸出電路連好線路。

2.編程:每按一次單脈沖按鈕產生一個正脈沖使8255產生一次中斷請求,讓CPU進行一

次中斷服務:依次輸出01H、02H,04H,08H,10H,20H,40H,80H使L0?L7依次發光,中斷8

次結束。

3.按圖33(B)8255方式1輸入電路,連好線路。

4.編程:每按一次單泳沖按鈕產生一個正脈沖使8255產生一次中斷請求,讓CPI.進行一次

中斷服務:讀取邏輯電平開關預置的ASCH碼,在屏幕上顯示其對應的字符,中斷8次結束。

三、參考流程圖:(如圖34,35)

實驗十數/模轉換器

一、實驗目的

了解數/模轉換器的基本原理,掌握DAC0832芯片的使用方法。

二、實驗內容

1、實驗電路原理如圖26,DAC0832采用單緩沖方式,具有單雙極性輸入端(圖中的Ua、Ub),

利用debug輸出命令(Out290數據)輸出數據給DAC0832,用萬用表測量單極性輸出端Ua及

雙極性輸出端Ub的電壓,驗證數字與電壓之間的線性關系。

2、編程產生以下波形(從Ub輸出,用示波器觀察)

(1)鋸齒波

(2)正弦波

三、編程提示

1、8位D/A轉換器DAC0832的口地址為290H,輸入數據與輸出電壓的關系為:

(UREF表示參考電壓,N表示數數據),這里的參考電壓為PC機的+5V電源。

2、產生鋸齒波只須將輸出到DAC0832的數據由0循環遞增。產生正弦波可根據正弦函數建一

個下弦數字量表,取值范圍為一個周期,表中數據個數在16個以上。

四、參考流程圖:

實驗十一模/數轉換器

一、實驗目的

了解模/數轉換的基本原理,掌握ADC0809的使用方法。

二、實驗內容

1、實驗電路原理圖如圖38。通過實驗臺左下角電位器RW1輸出0?5V直流電壓送入AK0809

通道O(INO),利用debug的輸出命令啟動A/D轉換器,輸入命令讀取轉換結果,驗證輸入電壓與

轉換后數字的關系。

啟動IN0開始轉換:Out02980

讀取轉換結果:In0298

2、編程采集INO輸入的電壓,在屏幕上顯示出轉換后的數據(用16進制數)。

3、將JP3的1、2短接,使IN2處于雙極性工作方式,并給IN1輸入一個低頻交流信號(幅

度為±5V),編程采集這個信號數據并在屏幕上顯示波形。

三、實驗提示

1、ADC0809的INOPl地址為298H,IN1口地址為299H。

2、IN0單極性輸入電壓與轉換后數字的關系為:

其中Ui為輸入電壓,UREF為參考電壓,這里的參考電壓為PC機的+5V電源。

3、一次A/D轉換的程序可以為

MOVDX,口地址

OCTDX,AL;啟動轉換

;延時

INAL,DX;讀取轉換結果放在AL中

四、參考流程圖(見圖39,40)

實驗十二步進電機控制實驗

一、實驗目的

1、了解步進電機控制的基本原理。

2、掌握控制步進電機轉動的編程方法。

二、實驗內容

1、按圖53連接線路,利用8255輸出脈沖序列,開關K0?K6控制步進電機轉速,K7控制

步進電機轉向。8255CS接288H?28FH。PAO?PA3接BA?BD;PCO?PC7接K0?K7。

2、編程:當K0?K6中某一開關為“1”(向上撥)時步進電機啟動。K7向上撥電機正轉,

向下撥電機反轉。

三、實驗說明

步進電機驅動原理是通過對每相線圈中的電流的順序切換來使電機作步進式旋轉。驅動電

路由脈沖信號來控制,所以調節脈沖信號的頻率便可改變步進電機的轉速。

如圖54所示:本實驗便用的步進電機用直流+5V電壓,每相電流為,電機線圈由四相組成:

即:e1(BA):62(BB);63(BC);4>4(BD)

駁動方式為二相激磁方式,各線圈通電順序如下表.

順序相616263(1)4反時針方向回轉

01100正時針方向回轉

10110

20011

31001

表中首先向61線圈一。2線圈輸入驅動電流,接著62—63,63—64,64一小1,又返回

到小1一62,按這種順序切換,電機軸按順時針方向旋轉。

實驗可通過不同長度的延時來得到不同頻率的步進電機輸入脈沖,從而得到多種步進速度。

四、參考流程圖

實驗十三數字溫度檢測實驗

一、實驗目的

了解數字溫度傳感器工作原理及使用方法。

二、實驗內容:

1.查看資料了解DS18E20的測溫原理、內部結構和使用方法。

2.實驗電路如圖所示:圖中DO為DS18B20數據輸出,DI為數據輸入。實驗前DO接8255的PA7,

DI接8255的PC7,8253的CLKO接1UHZ時鐘,GATEO接PCO,OUTO接非門輸入A,非「1輸出Y接IRQ,K7

用短路子短接。

3.DS19B2測溫原理:DS18B20是美國DALLAS公司生產的單總線接口數字溫度傳感器,只需一

根線即可與主機通信。接口電路簡單,但通信過程中對時序的要求非常嚴格。在我們的實驗方案

中,8253定時器是為了產生DS18B20讀寫過程中定時需要設定的,8253的GATEO接8255的PCO,這

樣就可以由軟件控制8253計數的開始和停止,從而得到所需要的延時時間長度。寫入數據(ID)

由8255的PC7通過一個集電極開始的緩沖門7407送至IJDS18B20的2腳(DO),DS18B20的3腳直接接

VCCo

4.編程利用DS18B20測溫,測試結果在屏幕上顯示。

三、參考流程圖

<一〉主程序流程序

〈三〉寫DS18B20子程序

〈四》讀DS18B20子程序

附錄1、查看PCI卡資源的方法

匯編程序支持win9x系統

因為PCI總線結構支持p&p即插即用功能,每臺微機分配給PCI擴展板的資源是動態浮動

的,不像ISA總線是固定死的,因此分配給設備的I/O基地址、mem基地址空間及int中新號會

囚為不同的微機而變化,所以實驗前需要確定當前微機中PCI卡的資源,并用其替換程序中的相

應值,重新編譯鏈接后才能實現實驗效果。

如果發現您的微機中PCI卡的設置與以下內容所描述的不一致,這應該是系統沒有分配好資

源導致的,實驗可能做不了,您可以將驅動卸掉再重新安裝,看看還出現這種情況否,或是換一

臺機席試一下,確認是ipc卡的問題還是操作系統安裝驅動程序時出現的問題。

需要替換的基地址值為每個匯編程序頭中的定義行:

io基地址為:

ioponequ0d400h-0280h;TPC卡中設備的io地址

ioport_dataequ0d4(M)h-0280h;TPC卡中設備的沁地址

ioport_ccntcquOd8(X)h:TPC卡中PCI接口芯片的io地址

mem基地址為:

mem_dataequOfTPC卡中設備的mem地址

其中”0d400h”是pci接口在微機中被動態分配的i。基地址,即需要替換的地址,相當于設備中的

地址()28()ho

”0d800h”是TPC卡中PCI接口芯片上的設置寄存器組占用的io地址,因為某些實驗需要設置該

芯片的寄存器。

,是pci接口在微機中被動態分配的mcm基地址,也是需要替換的地址,相當于設備存儲器的

起始地址Oho

替換方法如下:

步驟1:

參照實驗指導書安裝接口卡及其驅動程序

步驟2:

啟動微機并打開“控制面板”->“系統”->“設備管理器”并存到“微機原理教學

實驗裝置”

打開“TPC”

找到兩個輸入/輸出范圍(數值可能不會與圖中相同),其中一個范闈大小是Offh的是PCI接

口芯片卜的設置寄存器組占用的io地址空間.另一個范圍大小是07fh的是TPC設備的io地址空

間:兩個內存范圍(數值可能不會與圖中相同),一個范圍大小是Offh的是PCI接口芯片占用的

mem地址空間,另一個范圍大小是Offfffh的是TPC設備的mem地址空間。

它們的起始地址即為我們需要的基址值,圖中PCI接口芯片輸入輸出范圍是cOOO-cOff,基址

為cOOO;TPC設備的輸入輸出范圍是c400-c47ff

記錄下基址值。

步驟3:

用記錄下的基址值替換每個匯編程序頭中的定義行中的值,并重新編譯鏈接后即可。

io基地址為:

ioporiequ0d4()0h-0280h;TPC長中設備的io地址

????

????

ioport_dataequ0d400h-0280h;TPC卡中設備的沁地址

????

????

ioport_ccntcqu0d800h;TPC卡中PCI接口芯片的io地址

mem基地址為:

mem_da(aequOfTPCR中設備的mem地址

即替換“0d400h”為“0c400h”,“0d800h”為“OcOOOh”,“Of”為“Of”,并重新編譯逑接后

即可。

如果程序中使用了中斷,則需要根據TPC屬性窗口中的中斷請求號碼來修改程序中的中斷

向量、中斷掩碼的參數,并重新編譯鏈接后即可。

附錄2、匯編語言使用方法

匯編語言程序的開發過程

用匯編語言編制的程序稱為匯編語言源程序,它必須經過匯編、連接,生成二進

制代碼的目標程序,才能直接由計算機執行。匯編語言程序的開發過程如下圖所示。

編輯程序

A匯編語言使用

所謂匯編就是把用匯編吾言編寫語言目標代碼程序的過程.匯

編程序一般使用宏匯編程序(MASM)o

A.1運行匯編程序必的條件源程序

運行匯編程序必備的軟彳旭4*文件

匯編系統盤應包含如下交件:

MASM宏匯編程序文件

N

LINK連接程序文件

CREF索引程序文件(也可不用)宏匯編程序MASM

EDIT文本編輯程序(或PE等文本

用戶通過屏幕編輯程序鍵人源程序,檢查,可將源程序存到硬盤或軟盤二,程

序擴展名為.ASMo'

目標程

A.2編寫匯編源程序

序文件

用匯編語言編寫的源程必須是一個:用戶通過屏幕編輯程序鍵人源

程序,檢查無誤,可將源程手存盤,程序.ASM.

1)源程序的書寫格式

當CPU訪問內存時,是把存儲器分成若干通過4個段寄存器中存放的地玨對內

存儲器訪問,因此在編源程序時迦須L由于每個段的物理空間為:

有語法錯?

5:64KB,所以程序中各段石書寫一般有如下形式:

邏輯堆棧段堆棧段名SEGMENISTAC

用變量定夕預置的堆棧空間N

邏輯數據段

邏輯代碼段

ASSUME定義各段尋址關系

過程名PROC???

程序

過程名

代碼段名

END

在源程序中最少要有一個代碼段,數據段根據需要確定用否,也可以增設附加段。對

于堆棧段也可以根據需要確定用否,但在連接(LINK)時計算機將顯示警告性的錯誤。在程

序中如果沒有用到堆棧時,該錯誤提示不影響程序的運行;如果程序中用到堆棧時必須設

置堆棧段。?

SEGMENT.ASSUME.PROC???ENDP為偽指令,偽指令是發給匯編程序M.ASM的,而不和

微處理器打交道,在匯編時不產生目標代碼,只是把源程序中各種設置情況告訴匯編程序。

2)段寄存器的段地址的裝入

Assume偽指令語句只是建立了當前段與段寄存器的聯系,但不能把各段的段地址裝入

相應的段寄存器中,段寄存器的段地址的裝入是在程序中完成的。

(1)DS、ES、SS的裝入

由于段寄存器不能用立即數尋址方式直接傳送,所以段地址裝入可通過通用寄存器傳

送給段寄存器。

MOVAX,邏輯段名

MOV段寄存器,AX

其中邏輯段名為程序中定義各邏輯段的名字,(不包括代碼段),段寄存器是指與各邏

輯段相對應的各段寄存器(DS、ES、SS)o

(2)CS的裝入

代碼段寄存器是裝當前執行目標代碼的段地址,IP是提供下一條要執行的目標代碼的

偏移量。為了保證程序的正確執行,CS和IP裝入新值時是一起完成的。

對CS和IP的裝入有如下幾種情況:

①根據用戶程序中的偽指令END后的標號為CS和TP提供代碼段的段地址和目標代碼的

偏移地址。

②在程序運行過程中,當執行某些指令和操作時,CPU自動修改CS和IP的值,使它們

指向新的代碼段。

3)程序中的數據與變量

在匯編源程序中的數據除了立即數,由指令產生的數和通過鍵盤輸入的數以外,還有

大量的數據是通過偽指令語句進行預置酚配的。也就是在某邏輯段中(除代碼段),將所需

的數據以某種形式存放起來,在程序中可任意調用。在數據定義的同時還可以定義變量,

將變量與數據結合在一起。可以為某個變量分配存儲空間以便在程序執行過程中存放中間

結果和最終結果,使用起來極為方便。

(1)變量與數據的定義

變量與數據的定義大以通過符號定義偽指令EQU、=和數據定義偽指令DB或DW或DD來

實現。

七(^和=可以出現在程序的邏輯段內,也可出現在邏輯段外。

(2)匯編程序中數據的提供方法

①用數據定義偽指令提供數據如果程序要求原始數據為一批數據時,用數據

定義偽指令DB、DW和DD來提供較為方便。

②用立即數的形式提供

溫馨提示

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

評論

0/150

提交評論