微型計算機原理及應用實驗_第1頁
微型計算機原理及應用實驗_第2頁
微型計算機原理及應用實驗_第3頁
微型計算機原理及應用實驗_第4頁
微型計算機原理及應用實驗_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

YANGTZENORMALUNIVERSITY

£機原理及應用實驗

電子信息技術實驗教學中心

?'?YANGTZENORMALUNIVERSITY

實驗1DEBUG調(diào)試程序的應用

一、實驗目的

掌握DEBUG調(diào)試程序的常用命令,熟悉用DEBUG調(diào)試程序?qū)?/p>

EXE文件的調(diào)試過程,并具有一定的分析運行結(jié)果的能力。

二、實驗內(nèi)容

。編寫一個完整的一位數(shù)加法運算程序,并生成EXE文件;

。利用DEBUG調(diào)試EXE文件的執(zhí)行過程,并與源程序進行對比。

YANGTZENORMALUNIVERSITY

三、DEBUG常用命令

1.匯編命令A

格式:

A段寄存器名:偏移地址

A段地址:偏移地址

A偏移地址

A

功能:用該命令可以將匯編語言程序直接寫入內(nèi)存。

YANGTZENORMALUNIVERSITY

2.顯示內(nèi)存命令D

格式:

D段寄存器名:偏移地址

D段地址:偏移地址

D偏移地址

D

功能:顯示指定內(nèi)存范圍的內(nèi)容。

3.修改內(nèi)存單元內(nèi)容命令E

格式:

E地址內(nèi)容表

E地址

功能:修改內(nèi)存單元內(nèi)容

YANGTZENORMALUNIVERSITY

4.填充內(nèi)存命令F

格式:E地址范圍內(nèi)容表

功能:將內(nèi)容表中的內(nèi)容重復裝入內(nèi)存的指定范圍內(nèi)。

5,內(nèi)存移動命令M

格式:M源地址范圍目標起始地址

功能:把源地址范圍的內(nèi)容移動到目標起始地址開始的存儲單

)Ljo

6.比較命令C

格式:C源地址范圍目標起始地址

功能:比較兩個內(nèi)存區(qū)域的內(nèi)容是否相同,相同時不顯示任何

信息,不相同時顯示不相同的內(nèi)容

YANGTZENORMALUNIVERSITY

7.搜索指定內(nèi)容命令S

格式:s地址范圍內(nèi)容表

功能:在指定地址范圍內(nèi)搜索內(nèi)容表中的內(nèi)容。

8.查看修改寄存器內(nèi)容命令R

格式:

R

R寄存器名

功能:查看或修改寄存器內(nèi)容

關于標志位:

OF:OV/NV有/無;DF:DN/UP減/增;IF:EI/DI允許/禁止;

SF:NG/PL負/正;ZF:ZR/NZ零/非零;AF:AC/NA有/無;PF:

PE/PO偶/奇;CF:CY/NC有/無。

YANGTZENORMALUNIVERSITY

9.單步執(zhí)行命令T

格式:

T地址

T地址條數(shù)

功能:單步執(zhí)行指令

10.反匯編命令U

格式:

U地址

U地址范圍

功能:將指定內(nèi)存的內(nèi)容顯示成匯編語言形式。

11.命名命令N

格式:N路徑和文件名

YANGTZENORMALUNIVERSITY

12.讀盤命令L

格式:

L地址驅(qū)動器號起始扇區(qū)號扇區(qū)數(shù)

L地址

L

功能:將N命令指定的文件或磁盤扇區(qū)內(nèi)容讀到內(nèi)存。

13.寫盤命令W

格式:

W地址驅(qū)動器號起始扇區(qū)號扇區(qū)數(shù)

W地址

W

功能:將內(nèi)存內(nèi)容寫至UN命令指定的文件或磁盤扇區(qū)中。

YANGTZENORMALUNIVERSITY

14.輸入命令I

格式:I端口地址

功能:將端口的內(nèi)容傳送到累加器AL中。

15.輸出命令0

格式:0端口地址

功能:將累加器AL的內(nèi)容傳送到端口中。

16.運行命令G

格式:

G二地址

G

功能:從當前地址或指定地址開始執(zhí)行指令。

YANGTZENORMALUNIVERSITY

17.十六進制運算命令H

格式:

H數(shù)據(jù)1數(shù)據(jù)2

功能:對數(shù)據(jù)1和數(shù)據(jù)2進行十六進制加法和減法運算。

18.P命令

格式:

P

功能:在下一條指令執(zhí)行之前停止

19.退出命令Q

格式:

Q

功能:退出DEBUG調(diào)試環(huán)境。

?'?YANGTZENORMALUNIVERSITY

實驗2算術運算程序設計

、實驗目的

。掌握匯編語言中的數(shù)值接收方法;

。掌握算術運算程序的編寫與結(jié)果顯示方法;

。掌握宏定義與調(diào)用方法

、實驗內(nèi)容

從鍵盤接收運算式,編程實現(xiàn)兩位十進制數(shù)的算術運算(

加、減、乘、除),若輸入的不是數(shù)字或運算符,進行錯誤處

理,按Esc鍵退出。

YANGTZENORMALUNIVERSITY

三、編程提示

。定義一個顯示單字符的宏;

。定義一個能接收兩位數(shù)的子程序,并將其轉(zhuǎn)換成二進制,若

接收的不是數(shù)字,進行錯誤處理,其算法為:退一格,顯示

一個空格,再退一格。若接收的為ESC鍵退出;

。主程序的編程流程如圖2.1所示。

YANGTZENORMALUNIVERSITY

圖2.1

YANGTZENORMALUNIVERSITY

實驗3字符串處理程序設計

一、實驗目的

。掌握串操作程序設計的基本方法;

。掌握串查找與替換的方法;

。掌握字符串接收和顯示的方法;

。掌握循環(huán)和分支程序設計方法。

二、實驗內(nèi)容

。編程實現(xiàn)字符接收、字符轉(zhuǎn)換、字符顯示等操作;

。具體要求:從鍵盤接收30個字符存入變量X中,將X中的字符

傳送到變量Y中,將變量Y中的空格字符轉(zhuǎn)換成字符“0”,

回車換行后顯示Y中的內(nèi)容。

?'?YANGTZENORMALUNIVERSITY

三、編程提示

編程流程如圖3.1所示。

圖3.1

YANGTZENORMALUNIVERSITY

實驗4數(shù)值處理程序設計

一、實驗目的

。掌握數(shù)組元素的輸入方法;

。掌握一般的排序算法。

二、實驗內(nèi)容

。編程實現(xiàn)數(shù)值輸入、數(shù)組排序、顯示等基本操作;

。具體要求:從鍵盤輸入20個有符號兩位十進制數(shù),編程對其

從小到大進行排序,并顯示排序后的結(jié)果,以逗號分隔。

YANGTZENORMALUNIVERSITY

二、參考程序

dispcmacrox

movdl,x

movah,2

int21h

endm

datasegment

xdb20dup(?)

dataends

codesegment

assumecs:code,ds:data

go:movax,data

movds,ax

接收20個有符號數(shù)的程序段

movbx,19

YANGTZENORMALUNIVERSITY

10:movex,19

leasi,x

11:lodsb

empal,[si_

jge12

movah,[si]

mov[si],al

mov[si-l],ah

12:loop11

decbx

empbx,0

jne10

movex,20

13:lodsb

empal,0

YANGTZENORMALUNIVERSITY

jge14

pushax

dispc'-'

popax

negal

14:aam

orax,3030h

movbh,al

cmpah,30h

je15

dispcah

15:dispcbh

dispc','

loop13

dispc8

YANGTZENORMALUNIVERSITY

dispc20h

movah,7

int21h

movah,4ch

int21h

codeends

endgo

UNIVERSITY

實驗5文件、文件夾操作程序設計

一、實驗目的

。掌握在磁盤上建立文件夾的程序設計方法;

。掌握在文件夾下建立文件的程序設計方法;

。掌握對文件的讀、寫、關閉的程序設計方法

YANGTZENORMALUNIVERSITY

二、實驗內(nèi)容

。編程實現(xiàn)文件、文件夾的建立、寫入、字符串接收等基本操

作;

。具體要求:

①清屏,將光標置于5行,0列,從鍵盤接收最多80個字符的字

符串,將接收字符串中的小寫字母全部轉(zhuǎn)換成大寫,其余不

變;

②從10行,0列開始顯示轉(zhuǎn)換后的字符串;

③在D盤上建立一文件夾USER;

④將轉(zhuǎn)換后的字符串寫入文件'D:\USER\STRING.TXT中。

(注:文件操作時要求有相應的提示信息)

YANGTZENORMALUNIVERSITY

二、參考程序

dispsmacrox

movah,9

leadx,x

int21h

endm

datasegment

bufferdb80,?,81dup(O)

pfnamedbJD:\USER\O

fnamedb'D:\USER\STRING.TXT,。

dldbJCreatepaperfileerror5,Odh,Oah,,$J

d2db'Createfileerror',Oah,Odh,,$'

d3dbJWritefileerror',Oah,Odh,'$'

d4dbJClosefileerror5,Oah,Odh,J'

d5db'Operatesucceed',Oah,Odh,'$'

YANGTZENORMALUNIVERSITY

d6dbOah,Odh,'$'

dataends

codesegment

assumecs:code,ds:data

go:movax,data

movds,ax

movah,2

movbh,0

movdx,0

intlOh

moval,20h

movah,9

movex,2000

movbl,12h

intlOh

YANGTZENORMALUNIVERSITY

movah,2

movbh,0

movdh,5

movdl,0

intlOh

movah,Oah

leadx,buffer

int21h

movcl,buffer+1

movch,0

leasi,buffer+2

11:lodsb

cmpal,'a'

jb12

cmpal,'z

YANGTZENORMALUNIVERSITY

ja12

xoral,20h

mov[si-l],al

12:loop11

movbyteptr[si

movah,2

movbh,0

movdh,10

movdl,0

intlOh

dispsbuffer+2

dispsd6

movah,39h

leadx,pfname

int21h

YANGTZENORMALUNIVERSITY

jnc11

dispsdl

jmp16

12:movah,5bh

movex,0

leadx,fname

int21h

pushax

jnc13

dispsd2

jmp16

13:movah,40h

popbx

movcl,buffer+1

movch,0

》祥孝傷

YANGTZENORMALUNIVERSITY

leadx,buffer+2

int21h

jnc14

dispsd3

jmp16

14:movah,3eh

int21h

jnc15

dispsd4

jmp16

15:dispsd5

16:movah,7

int21h

movah,4ch

int21h

YANGTZENORMALUNIVERSITY

codeends

endgo

YANGTZENORMALUNIVERSITY

實驗6圖形程序設計

一、實驗目的

。掌握屏幕顯示方式的設置方法;

。掌握寫象素點的方法;

。掌握宏的定義和調(diào)用方法。

、實驗內(nèi)容

。編程實現(xiàn)幾何圖形的繪制,不同顏色的填充;

。具體要求:將屏幕設置成640*480,在屏幕上畫5個幾何圖形:

空心正方形、空心長方形、實心正方形、實心長方形、空心直

角等腰三角形。大小、顏色、位置自定。

YANGTZENORMALUNIVERSITY

二、參考程序

sxfkmacroxl,yl,x2,y2,color;畫實心矩形(左上頂點坐標,

local11,12右下頂點坐標,顏色)

movah,Och

moval,color

movdx,yl

11:movex,xl

12:intlOh

incex

cmpex,x2

jbe12

incdx

cmpdx,y2

jbe11

endm

YANGTZENORMALUNIVERSITY

kxfkmacroxl,yl,x2,y2,color畫空心矩形(左上頂點坐標,

local11,12,13,14右下頂點坐標,顏色)

movah,Och

movdx,yl

movex,xl

moval,color

11:intlOh

incex

empex,x2

jb11

12:intlOh

incdx

empdx,y2

jb12

13:intlOh

YANGTZENORMALUNIVERSITY

decex

empex,xl

ja13

14:intlOh

decdx

empdx,yl

ja14

endm

sjxmacroxl,yl,long,color畫等腰直角三角形(左上

local11,12,13頂點坐標,腰長,顏色)

movah,Och

moval,color

movdx,yl

movex,xl

movsi,long

ft

YANGTZENORMALUNIVERSITY

addsi,dx

11:intlOh

incdx

cmpdx,si

jbe11

movdi,long

adddi,ex

12:intlOh

incex

cmpex,di

jbe12

movex,xl

movdx,yl

13:incex

incdx

YANGTZENORMALUNIVERSITY

intlOh

cmpex,di

jb13

endm

codesegment

assumecs:code

go:movax,0012h

intlOh

movah,Obh

movbx,1

intlOh

sjx50,50,125,4

kxfk1,2,241,242,3

sxfk10,250,320,470,(

sxfk339,179,639,479,5

YANGTZENORMALUNIVERSITY

kxfk270,5,630,170,

movah,7

int21h

movah,4ch

int21h

codeends

endgo

YANGTZENORMALUNIVERSITY

實驗7中斷控制實驗

一、實驗目的

。了解Windows下中斷處理過程;

。比較中斷和查詢兩種數(shù)據(jù)交換方法的效率差別。

二、實驗內(nèi)容

用查詢和中斷方式分別實現(xiàn)控制指示燈,實驗電路如圖。

要求直接用手動產(chǎn)生的單脈沖作為中斷請求信號,每按一次單

脈沖產(chǎn)生一次中斷,讓8個指示燈顯示一秒鐘的01010101,否則

讓指示燈顯示10101010。然后在任務欄比較中斷和查詢方式下

CPU利用率的差別。

但'?YANGTZENORMALUNIVERSITY

。中斷方法:將8255的A□設為輸出,IRQ直接接到正脈沖,線

路連接如圖7.1所示;

。查詢方法:將8255的A□設為輸出接指示燈,C口設為輸入,

將PCO接正脈沖輸入,線路連接如圖7.2所示。

!IRQ

8255825s

1------1(ACK)

PAO一.LI116一.…?——PC?PA0?L0

PA1一..?LPA!

PA2一..■L:PA2?L2

PA3一……?L:PA3

PA4f.......?L?PA4

PA5......?LIPA5?L5

288h^28Fh288h^28Fh

CSPA6?Li.........----------CSPA8

PA7—.......?L1PA7?L7

圖7.1圖7.2

?'?YANGTZENORMALUNIVERSITY

三、編程提示

中斷方法的編程流程如圖7.3所示

主程序中斷服務程序

圖7.3

YANGTZENORMALUNIVERSITY

查詢方法的編程流程如圖7.4所示

有鍵按下?圖7.4

霞陵嚴守兄孝笛

YANGTZENORMALUNIVERSITY

實驗8定時器/計數(shù)器實驗

、實驗目的

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

、實驗內(nèi)容

。定時器應用:按圖8.1連接電路,將計數(shù)器0、計數(shù)器1分別

設置為方式3,計數(shù)初值設為1000,用邏輯筆觀察0UT1輸出

電平的變化(頻率1HZ);

。計數(shù)器應用:按圖8.2連接電路,將計數(shù)器0設置為方式0,

計數(shù)器初值為N(NC0FH),用手動逐個輸入單脈沖,編程

使計數(shù)值在屏幕上顯示,并同時用邏輯筆觀察OUTO電平變化

(當輸入N+1個脈沖后OUTO變高電平)。

YANGTZENORMALUNIVERSITY

U5OUT1

8253

RATF1141

CLK1<

280H、OUT0

CS

R6TFA11-

CLK0<9-

圖8.1

US8253

CLK0<-5—

+5

GATE?JLl^.……丁

280H、

?2%CS

OUT0

圖8.2

YANGTZENORMALUNIVERSITY

三、編程提示

8253控制寄存器地址283H

開始

計數(shù)器0地址280H、

計數(shù)器1地址281H

定時器應用時的編程

流程如圖&3所示,計數(shù)器

應用時的編程流程如圖&4

所示。

圖8.3圖8.4

YANGTZENORMALUNIVERSITY

實驗9并行通信實驗

、實驗目的

掌握并行接口芯片8255的工作原理及使用方法

八實驗內(nèi)容

。方式0的應用:實驗電路如圖9.1,8255c□接邏輯電平開關

K0-K7,A口接LED顯示電路L0?L7,編程從8255c口輸入數(shù)

據(jù),再從A口輸出;

。方式1的應用:實驗電路如圖9.2,要求每按一次單脈沖按

鈕產(chǎn)生一個正脈沖使8255產(chǎn)生一次中斷請求,讓CPU進行一

次中斷服務:依次輸出01H、02H,04H,08H,10H,20H,

40H,80H使L0?L7依次發(fā)光,中斷8次結(jié)束。

YANGTZENORMALUNIVERSITY

LA..14prApAA4.............10

k1?.15PCIPAI_3_........I18255

(INTRA)

L2?.16propo22?........L2IRQ------?PC3PAO—???L0

kA?.17Pc2pawPAIL1

k4..13pr4PA440........I4PA2—…-??L2

288h^28Fh

k5?.12prePAR39...........L5■<-------CSPA3-■?L3

11

?PC6PA638........LGPA4???L4

147..1。PC7PA737?.........I7PA5L5

(ACK)

PC6PA6—?L6

288HUI8

.?—.6CS8255PA7…?L7

圖9.1圖9.2

YANGTZENORMALUNIVERSITY

三、編程提示

8255控制端口地址28BH

A□的地址288H

C□的地址28AH

方式0應用時編程流程如圖

9.3所示,方式1應用時編程流

程如圖9.4所不。

圖9.3

Count=12返回DOS

N

中斷終來]

主程序中斷處理程序

圖9.4

YANGTZENORMALUNIVERSITY

實驗107段數(shù)碼管顯示控制實驗

、實驗目的

掌握數(shù)碼管顯示數(shù)字的原理。

、實驗內(nèi)容

。靜態(tài)顯示:按圖10.1連接好電路,將8255的ADPA0?PA6分

別與七段數(shù)碼管的段碼驅(qū)動輸入端a?g相連,位碼驅(qū)動輸

入端S1接+5V(選中),SO、dp接地(關閉)。編程從鍵盤

輸入一位十進制數(shù)字(0?9),在七段數(shù)碼管上顯示出來;

。動態(tài)顯示:按圖10.2連接好電路,七段數(shù)碼管段碼連接不變,

位碼驅(qū)動輸入端SI,S0接8255C口的PCI,PCO,編程在兩個

數(shù)碼管上顯示“56”。

YANGTZENORMALUNIVERSITY

七段數(shù)碼管字型代碼表

顯小字形,gQe-許d,2b*-'段碼.

0/031PIPIP3fh口a

IP020,0^OPl*10/063

2+1Q0<1.W0"1*'1〃5bh.-一fgb

?

3+,1'O0~1"A1-'IP4fhUc

“121P0"OQ1cIPOr66h0“e

1PI*102IPOcW6dhJJd

6+1P1*14,1/0,7dh<

1

7P0。0V030川l-1*-'07h2

8c121P1」1cIP1P7fhp

9/1/02IPIP6fh>'

圖10.1

YANGTZENORMALUNIVERSITY

七段數(shù)碼管字型代碼表

un

8255

圖10.2

YANGTZENORMALUNIVERSITY

三、編程提示

實驗臺上的七段數(shù)碼管為共陰型,段碼采用同相驅(qū)動,輸

入端加高電平,選中的數(shù)碼管亮,位碼加反相驅(qū)動器,位碼輸入

端高電平選中。

靜態(tài)顯示時的編程流程如圖10.3所示,動態(tài)顯示時的編程

流程如圖10.4所示。

YANGTZENORMALUNIVERSITY

(開始)

將8255設為A口輸出

送5的段碼至4口

送位碼。2H至C口

返回DOS]

圖10.3囹1U.4

YANGTZENORMALUNIVERSITY

實驗11搶答器設計實驗

一、實驗目的

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

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

二、實驗內(nèi)容

圖1L1為競賽搶答器(模擬)的原理圖,邏輯開關K0?K7

代表競賽搶答按鈕0?7號,當某個邏輯電平開關置“1”時,

相當某組搶答按鈕按下。在七段數(shù)碼管上將其組號(0?7)顯

示出來,并使微機揚聲器響一下。

YANGTZENORMALUNIVERSITY

U1774LS244

2

*IH-1A1

1w1

4

1A21?2

61A313

81A41V4

11

X2A12?1

I3

X2A22w2

15

A2A323

17

A2A42Y4

I1C

abcdefgdp

LED1

gnd

K7■6K5K4K3K2K0

圖ll.I

?'?YANGTZENORMALUNIVERSITY

三、編程提示

設置8255為C□輸入、A□輸出,讀取C□數(shù)據(jù),若為0表

示無人搶答,若不為0則有人搶答。根據(jù)讀取數(shù)據(jù)可判斷搶答組

號。從鍵盤上按空格鍵開始下一輪搶答,按其它鍵程序退出。

YANGTZENORMALUNIVERSITY

圖11.2

YANGTZENORMALUNIVERSITY

實驗12交通燈控制實驗

一、實驗目的

通過并行接口8255實現(xiàn)十字路口交通燈的模擬控制,進一步

掌握對并行口的使用。

二、實驗內(nèi)容

如圖12.1,L7、L6、L5作為南北路口的交通燈與PC7、PC6、

PC5相連,L2、LKL0作為東西路口的交通燈與PC2、PCI、PCO

相連。編程使六個燈按交通燈變化規(guī)律亮滅。

紅黃紅黃綠

L716L5L2L1L0

??????

fttT

PC7PC6PCSPC2PCIPC0

CS8255

圖12.1

YANGTZENORMALUNIVERSITY

三、編程提示

十字路口交通燈的變化規(guī)律要求:

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

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

繼續(xù)亮;

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

(4)南北路口的紅燈繼續(xù)亮、同時東西路口的黃燈亮閃

爍若干次;

(5)轉(zhuǎn)(1)重復。

編程流程如圖12.2所示。

YANGTZENORMALUNIVERSITY

圖12.2

YANGTZENORMALUNIVERSITY

實驗13串行通信實驗

一、實驗目的

。了解串行通訊的基本原理;

。掌握串行接口芯片8251的工作原理和編程方法。

二、實驗內(nèi)容

。按圖13.1連接好電路,(8251插通用插座)其中8253計數(shù)器用

于產(chǎn)生8251的發(fā)送和接收時鐘.TXD和RXD連在一起;

。編程:從鍵盤輸入一個字符,將其ASCH碼加1后發(fā)送出去,再

接收回來在屏幕上顯示。實現(xiàn)自發(fā)自收。

YANGTZENORMALUNIVERSITY

D0D0NTXD

OUT0D1D1J

O

D2D2XRXD

GATE?D3.

D3L

D4D4

CLKQ<D5D5

D6D6TxRDY15

D7D7

--8251RxRDY14

U5CS

2B8H?2BPH?…?RD

8253IOR?.?UR

IQ(J????_??.c

A0????-?R

氏21IE

RESET*....*

uCTS

r

280h-287h

e

1MHZ上….?

圖13.1

?'?YANGTZENORMALUNIVERSITY

三、編程提示

。圖示電路8251的控制□地址為2B9H,數(shù)據(jù)口地址為2B8H;

。8253計數(shù)器的計數(shù)初值二時鐘頻率/(波特率X波特率因

子),這里的時鐘頻率接1MHz,波特率若選1200,波特率因

子若選16,則計數(shù)器初值為52H;

。收發(fā)采用查詢方式;

。編程流程如圖13.2所示。

U浮彳通孝傷

YANGTZENORMALUNIVERSITY

《開始~3

圖13.2

?'?YANGTZENORMALUNIVERSITY

實驗14數(shù)/模轉(zhuǎn)換實驗

一、實驗目的

了解數(shù)/模轉(zhuǎn)換器的基本原理,掌握DAC0832芯片的使用方

法。

、實驗內(nèi)容

。實驗電路原理如圖14.1所示,DAC0832采用單緩沖方式,具

有單雙極性輸入端(圖中的Ua、Ub);

。編程產(chǎn)生鋸齒波(從Ub輸出,用示波器觀察);

。編程產(chǎn)生正弦波(從Ub輸出,用示波器觀察)。

YANGTZENORMALUNIVERSITY

U6

DAC0832

D7D7

D6D6

D5D5

D4D4

D3D3

D2D2

2

D1D1IOUt1

D0D0

Iout212m

cSN

do

uRr

298H礫一9

圖14.1

YANGTZENORMALUNIVERSITY

三、編程提示

。8位D/A轉(zhuǎn)換器DAC0832的口地址為290H,輸入數(shù)據(jù)與輸出電

壓的關系為:

Ua二-(UREF/256)*N

Ua二-(UREF/256)*N-5

(UREF表示參考電壓,N表示數(shù)數(shù)據(jù)),這里的參考電壓為PC

機的+5V電源。

。產(chǎn)生鋸齒波只須將輸出到DAC0832的數(shù)據(jù)由0循環(huán)遞增;

。產(chǎn)生正弦波可根據(jù)正弦函數(shù)建一個下弦數(shù)字量表,取值范圍

為一個周期,表中數(shù)據(jù)個數(shù)在16個以上。

YANGTZENORMALUNIVERSITY

(g?

將喔給CL

將CL中的數(shù)給DK0832

loipi

圖14.2圖14.3

?'?YANGTZENORMALUNIVERSITY

實驗15模/數(shù)轉(zhuǎn)換實驗

、實驗目的

了解模/數(shù)轉(zhuǎn)換的基本原理,掌握ADC0809的使用方法。

、實驗內(nèi)容

實驗電路原理圖如圖15.1所示。通過實驗臺左下角電位器

RW1輸出0?5V直流電壓送入ADC0809通道O(INO),編程采集IN0

輸入的電壓,在屏幕上顯示出轉(zhuǎn)換后的數(shù)據(jù)(用16進制數(shù))。

YANGTZENORMALUNIVERSITY

+5

217

12二

ref(+)226

VCC2二35

244

GND253

reft-)2二62

27

1MHZ一1

280

JWL?10>CLOCK

282

IN-2ADD-C1

ADD-B

+5R60

IN-1ADD-A

18kI

R7

EOC二

18k8IOU

ALE

-26STARTcs

IN1IN-0

U298H?29FH

ENABLE

圖15.1

?'?YANGTZENORMALUNIVERSITY

三、編程提示

。ADC0809的INO□地址為298H,IN1口地址為299H;

。IN0單極性輸入電壓與轉(zhuǎn)換后數(shù)字的關系為:

N-Ui/(Uref/256)

其中Ui為輸入電壓,UREF為參考電壓,這里的參考電壓為P

C機的+5V電源。

。編程流程如圖15.2所示

YANGTZENORMALUNIVERSITY

顯示子程序

主程序

圖15.2

YANGTZENORMALUNIVERSITY

實驗168255A并行口鍵盤掃描實驗

一、實驗目的

。掌握8255A編程原理。

。了解鍵盤陣列結(jié)構,學會讀取按鍵的方法。

二、實驗內(nèi)容

本實驗的實驗電路如圖16.1所示。它做在一塊擴展電路板上

,用一根20芯扁平電纜線將實驗板擴展插頭J1與實驗臺上的擴

展插頭J7相連,為擴展電路連接電源及外部總線。擴展電路板

上的數(shù)碼管、鍵盤陣列既能由8279控制,也可以由外部電路控

制,其實現(xiàn)靠的是若干組短路子組成的控制選擇開關KI、K2、

K3、K4、KBO、KB1、KB2。

YANGTZENORMALUNIVERSITY

當KI、K3、K4連接在8279一端時,數(shù)碼管由8279控制,連

接在LS273一端時由外部總線通過LS273直接控制。當K2、KB1、

KB2、KB3連接在8279一端時,鍵盤陣列由8279控制,連接在

8255一端時由外接芯片8255控制。因為本實驗為8255控制實驗,

所以除了連接J1和J7外,還需要將選擇開關K2、KB1、KB2、KB3

連接在8255一端,并將KAO-KA7,KBO-KB2連接到8255芯片A口,

CO,還需要連接8255芯片的片選,以使鍵盤陣列由8255芯片控

制。

8255A的端口A地址為:288H,端DC地址為:28AH,控制口

地址為:28BHo編程使得在鍵盤陣列上每按一個鍵后,微機屏

幕上有相應字符顯示出來。

YANGTZENORMALUNIVERSITY

288h?28Fh

?…■

圖16.1

?'?YANGTZENORMALUNIVERSITY

三、編程提示

1.識別鍵盤上的閉合鍵,通過采用行掃描法或列翻轉(zhuǎn)法:

(1)行掃描法是使鍵盤上某一列線為低電平,而其余行接高電平,

然后讀取列值;如果列值中有某位為低電平,則表明行列交點處的鍵

被按下;否則掃描下一行,直到掃完全部的行線為止。

(2)行反轉(zhuǎn)法識別閉合鍵時,要將行線接一個并行口,先讓它工

作在輸出方式,將列線也接到一個并行口,先讓它工作在輸入方式;

程序通過輸出端口向全部行線上送低電平,然后讀取列線的值;如果

此時有某一鍵被按下,則必定會使某一列線值為零,程序再對兩個并

行端口進行方式設置,使行線工作在輸入方式,列線工作在輸出方式,

并且將剛才讀到的列線值從列線所接的并行端口輸出,再讀取行線上

的值;那么,在閉合鍵所在的行線上的值必定為零。這樣,當一個鍵

被按下時,必定可以讀到一對唯一的行值和列值。在我們提供的程序

中就采用行反轉(zhuǎn)法來識別鍵盤按鍵。

YANGTZENORMALUNIVERSITY

2.在程序設計時,將各個鍵對應的代碼(列值,行值)放在

一個表中,程序通過查表來確定具體按下的為哪一個鍵。

3.編程流程

主程序流程如圖16.2所示。

設置數(shù)據(jù)段,顯示提示信息

調(diào)艇盤掃描子薛-

--——是

是否R健——

否|、吟

溫馨提示

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

最新文檔

評論

0/150

提交評論