剖析微型計算機原理與接口技術實驗的學生用法_第1頁
剖析微型計算機原理與接口技術實驗的學生用法_第2頁
剖析微型計算機原理與接口技術實驗的學生用法_第3頁
剖析微型計算機原理與接口技術實驗的學生用法_第4頁
剖析微型計算機原理與接口技術實驗的學生用法_第5頁
已閱讀5頁,還剩60頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

《微型計算機原理層接口核木》

實除相導軍

信息工程學院電子信息

2023.10.12

1.Dais-8086H+試驗平臺系統簡介

1.1系統構成

Dais系列微機仿真試驗系統由管理CPU、Fl的CPU和通用電路、接口試驗電路及穩壓電源構成,

通過RS232c串行接口與PC微機相連,系統硬件重要內容如下:

CPU管理CPU、Fl1均CPU8032/78E438/STC系列單片機

監控管理程序在管理CPU日勺FLASH中、RAM61256二片(64K)、

系統存儲器

BPRAM61256(32K)。

8251、8253、8255、8259、ADC0809、DAC0832、164、74LS273、

接口芯片

74LS244、電子發聲單元,電機控制單元,開關及發光二極管、

及單元試驗

單脈沖觸發器、繼電器控制等

外設接口打印接口,RS232c串口、51仿真接口

顯示屏6位LED、二路雙蹤示波器

鍵盤32鍵自定義鍵盤

EPROM編程器時EPROM2764/27128迅速讀出

系統電源1-5V/2A,+12V/0.5A

1.2系統功能與特點

⑴自帶鍵盤、顯示屏,能獨立運行,也可以PC機為操作平臺。兩種工作方式任意選擇。

⑵系統采用緊耦合多CPU技術,用STC89c58作為系統管理CPU,8032/78E438/STC系列單片

機作為H時機仿真與試驗CPU,其軟硬件資源100%出借。

⑶HII勺CPU采用主頻為11.0592MHz,支持獷展仿真(即RAM仿真),亦支持ROM仿真(即FLASH

下載式仿真)。在ROM仿真模式下,可實現對P0、P2的I/O口功能。

⑷配有二片61c256靜態存儲器構成系統的64K程序空間,地址范圍為0000H~0FFFFH,還配一片

61C256(32K)作為顧客設置網新點區(BPRAM)o

⑸通過RS232通信接口,在Windows集成軟件的支持下,運用上位機豐富的軟件硬件資源,實現

顧客程序的I編輯、編譯、調試運行,提高試驗效率。

⑹具有最豐富H勺調試手段,系統全面支持硬件斷點,可無限制設置斷點,同步具有單步、宏單步、

持續運行及無限制暫停等功能,100%保護顧客現場,返回監控。

⑺向顧客提供ISA總線接口及PARK板接口,為研發與創新試驗的實行發明了必備的拓展環境。

1.3系統資源分派

試驗系統尋址范圍定義如下:

空間地址器件選用用途與闡明

0000H-7FFFH6116監控程序空間

0(X)0H~0FFFFHPROM目日勺機程序空間

0000H?0FFFFH試驗接口電路數據及IO空間

系統已定義曰勺I/O地址如下(本學期試驗所用的端II地址):

接口芯片口地址用途

74LS2730FFDDH字位口

74LS2730FFDCH字形口

74LS2450FFDEH鍵入口

8255A口0FFD8HEP總線

8255B口0FFD9HEP地址

8255C口0FFDAHEP控制

8255口0FFDBH控制字

2安裝與使用

2.1硬件安裝

(1)電源連接:通過隨機所配曰勺三芯電源線接入AC220V電網。

⑵打開電源開關系統應顯示閃動日勺“P.”,若否應按下RESET鍵,如仍不顯示閃動的“P.”,應立

即切斷電源,檢查后重新進行或與我司駐當地銷包服務中心聯絡。

⑶系統功能自檢

在閃動的“P?”狀態下按鍵:[MOVE]->[EXEC],系統以持續方式運行“8”字循環右移程序,若

6位LED出現跑“8”顯示,闡明系統已進入正常工作狀態,可按RESET鍵返“P.”待令。

2.2快捷使用

Windows環境

⑴在桌面上點擊圖M標愚然后選擇以試驗系統所插串口一致的選項,點擊“確定”便進入

Dais

集成調試環境。

⑵點擊工具條中“I信”圖標,在打開對話框中雙擊LED51.asm文獻,進入試驗源程序的編輯窗

口。

⑶點擊工具條中“I!”圖標,進行源文獻的編譯、裝載,在出現編譯成功的對話框后點擊“OK”

框自動進入源文獻調試狀態。

⑷在工具條中點擊所需的運行方式:膽”單步、葉宏單步、運行。

(5)若需要以斷點方式運行,可直接點擊源語句行前的“'”圖標來完畢所需斷點日勺設置與清除,

然后再點擊/上”圖標進入斷點運行狀態。

⑹系統一旦進入運行狀態后若需終止該程序的運行請點擊/口"圖標退出目前操作返回待令狀態。

軟件試驗

本節共編了9個軟件試驗,通過這些程序11勺調試使學生熟悉8088/86U勺指令系統,理解程序設計過

程,掌握匯編語言設計措施以及怎樣使用試驗系統提供的調試手段來排除程序錯誤。

試驗一程序設計試驗(一)

1、清零程序

一、試驗目的

掌握8088匯編語言程序設計和調試措施,熟悉鍵盤操作。

二、試驗內容

把RAM區內4000H-40FFH單元日勺內容清零。

三、程序流程

?I?

緩沖區首址4CICI0HfBX

.I.

字節數801~1-國

,I,

|AX清零I

?I二■—

AXf[BX]

BX+2-?BX

I

CX-1->CX

<CX^=0?>N一

1Y

四、試驗環節

用持續或單步方式運行程序,檢杳4000~40FFH中執行程序前后日勺內容變化。

五、試驗思索

假使把4000H-40FFH中的內容改成FFh,怎樣修改程序。

六、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3000H

SI:MOVBX,4000H

MOVAX,0000H

MOVCXZ0080H

LI:MOV[BX]zAX

INCBX

INCBX

LOOPLI

JMP$

CODEENDS

ENDSI

2、拆字程序

一、試驗目的

掌握匯編語言設計和調試措施。

二、試驗內容

把4000HB勺內容拆開,高位送4001H低位,低位送4002H低位,4001H,4002H高位清零,

般本程序用于把數據送顯示緩沖區時用。

三、程序流程

4口口口1~1內容送八1_,.明

?I?

以1~1右移4位后送4。011~1

?_I

IA屏蔽高4位后送4H02H

I

r^]

四、試驗環節

用持續或單步方式運行程序,檢查4000~4002H中內容變化狀況。

五、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3020H

S2:MOVBX,4000H

MOVAL,[BX]

MOVAH,AL

MOVCL,4

SHRAH,CL

INCBX

MOV[RX],AH

ANDAL,OFH

INCBX

MOV[BX],AL

JMP$

CODEENDS

ENDS2

3、拼字程序

一、試驗目日勺

深入掌握匯編語言設計和調試措施。

二、試驗內容

把4000H、4001H的低位分別送入4002H高下四位,一般本程序用于把顯示緩沖區日勺數據取出拼

裝成一種字節。

三、試驗流程

|40口。1~1送人匕左移4位|

?I_?

4001%AH,屏蔽高4位|

?I?

|AL和AH或后送4。02Hl

I

n^]

四、試驗環節

單步或持續運行程序,檢查4002h內容變化狀況。

五、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3040H

S3:MOVBX,4000H

MOVAX,[BX]

ANDAL,OFH

MOVCL,4

SHLAL,CL

];屏蔽高4位

ORAL,AH

ADDBX,2

MOV[BX],AL

JMP$

CODEENDS

ENDS3

試驗匯報規定:

1、將程序補充完整;

2、詳細注釋所有程序。

3、完畢試驗思索

4、注明試驗現象及結論。

試驗二程序試驗(二)

4、數據區移動

一、試驗目H勺

掌握RAM中的數據操作。

二、試驗內容

把4100H源RAM區首地址內的16字節數據傳送到4200H目依JRAM區。

三、設計思想

程序規定把內存中一數據區(稱為源數據塊)傳送到另一存儲區(稱為目的數據塊)。源數據塊和

目的數據塊在存儲器中也許有三種狀況,如下圖:

OOOOh

源數據塊{

目的數據塊{

FFFFh

(b)(c)

對于兩個數據分離的狀況,如圖(a),數據日勺傳送從數據塊的首地址開始,或者從數據塊H勺末地

址開始均可。但對于有部分重疊日勺狀況,則要加以分析?,否則重疊部分會因“搬移”而遭破壞。

可以得出如下.結論:當源數據首址>目的塊首址時,從數據塊首址開始傳送數據。當源數據首址

〈目的塊首址時,從數據塊末址開始傳送數據。

四、程序流程

五、試驗環節

運行程序,檢查4100~410Fh中內容與否和4200~420Fh中內容完全一致。

六、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3060H

S4:MOVCX,0010H

MOVSI,4100H

MOVDI,4200H

CMPSI,DI

JAA42

ADDSIZCX

ADDDI,CX

A41:DECSI

DECDI

MOVAL,[SI]

MOV[DI],AL

LOOPA41

JMP$

A42:MOVAL,[SI]

MOV[DI],AL

INCSI

INCDI

LOOPA42

JMP$

CODEENDS

ENDS4

5、數據排序試驗

一、試驗日的

熟悉8088指令系統,掌握程序設計措施。

二、試驗內容

編寫并調試?種排序子程序,其措施為用冒泡法將RAM中B勺幾種單元字節無符號的I正整數,按從

小到大的次序重新排列。

三、程序流程

FW1

數據個數-ex

緩沖區首址-BX

CXE棧

—N<[BX]>[BX-H]?>

~~一1丫,

|BX+LBX|

,I、

<CX-LCX=07>N」

lY

I彈出cx|

<CX-1->CX=07>N-

交換[BX]&[BX+1]內容|一

四、試驗環節

⑴從第一種數開始,依次把相鄰的兩個數進行比較,即第(N-2)個數與第(N-1)個數比較,第

(N-1)個數與N個數比較等等;若第(N-1)個數不不小于第N個數,則兩者互換,否則不互換,直

到N個數叫相鄰兩個數都比較完為止。此時。N個數中的最小數將被排在N個數的最終。

⑵對剩余口勺(N-1)個數反復第⑴步,找到(N-1)個數中日勺最小數。

⑶反復第⑵步,直到N個數所有排序好為止。

五、試驗環節

在4000H-400AH中通過健盤命令輸入不等的10個數,運行本試驗程序后檢查4000H-400AH中

內容與否按從大到小排列。在和PC機聯機時,用持續單步方式,可很清晰地看出數據排序時數據移

動變化狀況。

六、試驗思索

編一程序把4000H-400AH中內容按從大到小排列。

七、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3090H

S5:MOVCX,000AH

A53:MOVBXZ4000H

PUSHCX

A52:MOVAX,(BX]

[1;兩數比較

JCA51

A54:INCBX

LOOPA52

POPCX

LOOPA53

JMP$

A51:XCHGAL,AH

MOV[BX],AX

JMPA54

CODEENDS

ENDS5

6、找“零”個數

一、試驗目的

熟悉匯編語言編程,掌握用操作指令的使用。

二、試驗內容

在4000-400Fh中查出有幾種字節是00,把個數放在4100h中。

三、程序流程

計數單元4100H清奉

緩沖區首址4000HfDI

.I.

|字節數10H法一

-----~~#-1____

<[DI]=0?>Y-?|[4100]+1

N|一―~

Dl+LDI

I

-N〈字節數到嗎?>

Y|

四、試驗環節

在4000M00Fh的幾種單元中填入零,運行本程序后檢查4100h中是幾種單元數。

五、試驗思索

修改程序,查找其他內容。如OFFH等

六、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG30B0H

S6:MOVBX,4100H;COUNT

MOVAX,0000

MOV[BX],AX

MOVCXZ0010H

MOVDI,4000H

CLD

A62:SCASB

[1:是。則轉移計數

A63:LOOPA62

JMP$

A6i:INCBYTEP'i'K[BX]

JMPA63

CODEENDS

ENDS6

試驗匯報規定:

1、將程序補充完整;

2、詳細注釋所有程序。

試驗三程序試驗(三)

7、二進制轉換到BCD

一、試驗規定

將給定歐I-種二進制數,轉換成二進制編碼的十進制(BCD)碼。

二、試驗目的

掌握簡樸的數值轉換算法,基本理解數值的多種體現措施。

三、試驗闡明

計算機中的數值有多種體現方式,這是計算機的基礎。掌握多種數制之間的轉換是?種基本功。

本試驗將轉換成果存入4000h為起始地址的三個單元。

四、程序流程

五、試驗思索

怎樣將BCD轉換成二進制碼?

六、試驗程序

codesegment

assumecs:code

orglOOOh

Start:movbx,4000h

movax,123

movclz100

divcl

mov[bx],al;除以100,得百位數

moval,ah

movah,0

movcl,10

divcl

[1;余數除以10,得十位數

[);余數為個位數

jmp$

codeends

endStart

8、多分支程序

一、試驗目的

掌握匯編語言打勺編程,熟悉程序散轉口勺設計措施。

二、試驗內容

多分支構造相稱于一種多路開關,在程序設計中一般是根據某寄存器或某單元口勺內容進行程序轉

移。在設計多分支轉移程序時,假如分支太多,則平均轉移速度太慢,本試驗采用轉移地址表實現多

分支轉移,可以提高平均轉移速度。

編寫程序,根據送入的數據轉移運行。

三、程序流程

AH漕零

偏移圜4000H]R

,I.

轉移地址表首址->BX

?I,

AX+BXfBX

,I,

JMP[BX]

,I,

一轉

III……I

012......F循環右移

四、編程提醒

LED數碼管0~FH勺字行代碼:

0123456789ABcDEF滅

coF9A4BO999282F880908883C6Al868EFF

LED數碼管U勺字位代碼:

字位123456

代碼201008040201

五、試驗環節

在4000h中分次輸入00,01,02…0F,每次運行程FK后觀測數碼管上數字循環狀況。

六、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG3130H

S8:JMPA81

TABDWLEDO,LED1,LED2zLED3,LED4zLED5,LED6zLED7

DWLED8,LED9,LEDA,LEDB,LEDC,LEDD,LEDErLEDF

A81:MOVBX,OFFSETTAB

MOVSI,4000H

MOVAL,[SI]

ANDAL,OFH

SHLAL,1

MOVAH,OOH

ADDBX,AX

JMP[BX]

LEDO:MOVAL,OCOH

JMPLEDX

LED1:MOVAL,0F9H

JMPLEDX

LED2:MOVAL,0A4H

JMPLEDX

LED3:MOVAL,OBOH

JMPLEDX

LED4:MOVAL,99H

JMPLEDX

LED5:MOVAL,92H

JMPLEDX

LED6:MOVAL,82H

JMPLEDX

LED7:MOVAL,OF8H

JMPLEDX

LED8:MOVAL,80H

JMPLEDX

LED9:MOVAL,90H

JMPLEDX

LEDA:MOVAL,88H

JMPLEDX

LEDB:MOVAL,83H

JMPLEDX

LEDC:MOVAL,0C6H

JMPLEDX

LEDD:MOVAL,0A1H

JMPLEDX

LEDE:MOVAL,86H

JMPLEDX

LEDF:MOVALZ8EH

JMPLEDX

LEDX:MOVDX,OFFDCH

OUTDXZAL

MOVCL,20H

MOVDXZOFFDDH

LEDX1:MOVAL,CL

OUTDX,AL

PUSHCX

CALLDLL

POPCX

RORCL,1

JMPLEDX1

DLL:MOVBX,U02UH

DL1:DECBX

CMPBXZ0000

JZDL3

MOVCX,04FFH

LOOP$

JMPDL1

DL3:RET

CODEENDS

ENDS8

試驗匯報規定:

工、將程序補充完整;

2、詳細注釋所有程序。

9、顯示子程序

一、試驗目的

熟悉LED顯示屏的顯示過程。

二、試驗內容

編寫程序,依次閃動顯示“dais88"、“good”。

三、程序流程

四、試驗環節

持續運行程序,觀測數碼管顯示狀況。

五、試驗程序

CODESEGMENT

ASSUMECS:CODE,DS:CODE,ES:CODE

ORG31E0H

S9:JMPSTART9

ZXKEQUOFFDCH

ZWKEQUOFFDDH

LEDDBOCOH,0F9H,3A4H,OBOH,99H,92H,82H,0F8H,80H,90H

DB88H,83H,0C6Hf0A1H,86H,8EH,OFFH,OCH,ODEH,0F3H

BUFDB?,?,?,?,?z?

START9:MOVCX,OOO5H;"dais88”ON/OFFLED,COUNT

A90:PUSHCX

A91:MOVBX,OFFSETBUF

MOVAX,OAODH

MOV[BX],AX

ADDBX,2

MOVAX,ObOlH

MOV[BX],AX

ADDBXZ2

MOVAX,0808H

MOV[BX],AX

MOVCXZ0050H;ONLED,TIME

A92:PUSHCX

CALLDIS

POPCX

LOOPA92

MOVCX,0003H

MOVAX,1010H

MOVBX,OFFSETBUF

A93:MOV[BX],AX

INCBX

INCBX

LOOPA93

MOVCX,0020H/OFFSET,TIME

A94:PUSHCX

CALLDIS

POPCX

LOOPA94

POPCX

LOOPA90

MOVCX,0005H;nqoodnON/OFFLED-COUNT

A99:PUSHCX

A95:MOVBX,OFFSETBUF

MOVAXZ0009H

MOV[BX],AX

ADDBXZ2

MOVAX,0D00H

MOV[BX],AX

ADDBXZ2

MOVAX,1010H

MOV[BX],AX

MOVCX,0050H;ONLED-TIME

A96:PUSHCX

CALLDIS

POPCX

LOOPA96

MOVCX,0003H

MOVAX,1010H

MOVBX,OFFSETBUF

A97:MOV[BX],AX

INCBX

INCBX

LOOPA97

MOVCXZ0020H;OFFSET-TIME

A98:PUSHCX

CALLDIS

POPCX

LOOPA98

POPCX

LOOPA99

JMPSTART9

DIS:MOVCL,20H

MOVBXZOFFSETBUF

DIS1:MOVAL,[BX]

PUSHBX

MOVBX,OFFSETLED

XLAT

POPBX

MOVDXZZXK

OUTDX,AL

MOVAL,CL

MOVDXZZWK

OUTDXZAL

PUSHCX

MOVCXZ0100H

DELAY:LOOP$

POPCX

CMPCL,01H

JZEXIT

INCBX

SHRCL,1

JMPDIS1

EXIT:MOVAL,OOH

MOVDX,ZWK

OUTDX,AL

RET

CODEENDS

ENDS9

知識補充:LED(LightEmittingDiode)數碼管的工作原理

由7段發光二極管按數字''8〃排列構成LED數碼管,重要用于顯示數碼0-9,也可以顯示A?F

等字符。LED數碼管有共陽極和共陰極兩種構造。

共陽極,Di=0時燈亮;共陰極,Di=l時燈亮。字型編碼不一樣。-

a二

b:

c里

極L

d動

e電

f路

二tl

f

ht-l

8255An

(■>效碼管外fi!(b)共用慢結構(c)共陰極結構(?)連接示意

⑷"X口?*5b1BgFlb[dEF

0123456789AbCdEF

將一種數碼在??種LED數碼管.卜.顯示出來,需要驅動數碼管。這需要兩個條件,■是通過字形代

碼端口輸出字形代碼(對應的LED日勺顯示代碼),二是通過位型代碼端口輸出位型代碼。

數碼管段選碼(字形碼):LED顯示屏上顯示某個字符時,必須在它的8位段選線上加上對應時

電平組合,即一?種8位數據(該字符日勺段選碼)。一般段選得的編碼規則:

D7D6D5D4D3D2DIDO

dpgfedcba

這樣的程序片段是:

movbx,l;BX-要顯示的數字(這里假設為1)

movaljedtblbx];換碼為顯示代碼:AL<-LEBTB[BX]

movdx,por(;假設port表達與數碼管相接Fl勺端口地址

outdx,al;輸出顯示

系統已定義H勺I/O地址如下:

接口芯片口地址用途

74LS273FFDDH字位口/鍵掃口

74LS273FFDCH字形口

74LS245FFDEH鍵入口

LED靜態顯示接口電路連接圖

=

=

=

=It

_

IT

實驗三:串行口數碼管靜態顯示

LED動態顯示接口電路連接圖(試驗箱方式)

t用

吃削

J,看黑

±-露

_?『

堀需

i-

?需

w

M北

n『

?益靠

_北

?道

If

?

??然

-In

3需

鍵值表

字位/

字形/

電路、

示控制

鍵掃顯

試驗箱

電路

控制

顯示

鍵掃

和口

0日

字位口

omzx

?A口

字形

DO

DI

D2

D3

D4

D5

D6

D7

代碼

字形

h

H

a

b

溫馨提示

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

評論

0/150

提交評論