微机原理实验指导书资料.docx

上传人:b****1 文档编号:1583985 上传时间:2023-05-01 格式:DOCX 页数:31 大小:971.97KB
下载 相关 举报
微机原理实验指导书资料.docx_第1页
第1页 / 共31页
微机原理实验指导书资料.docx_第2页
第2页 / 共31页
微机原理实验指导书资料.docx_第3页
第3页 / 共31页
微机原理实验指导书资料.docx_第4页
第4页 / 共31页
微机原理实验指导书资料.docx_第5页
第5页 / 共31页
微机原理实验指导书资料.docx_第6页
第6页 / 共31页
微机原理实验指导书资料.docx_第7页
第7页 / 共31页
微机原理实验指导书资料.docx_第8页
第8页 / 共31页
微机原理实验指导书资料.docx_第9页
第9页 / 共31页
微机原理实验指导书资料.docx_第10页
第10页 / 共31页
微机原理实验指导书资料.docx_第11页
第11页 / 共31页
微机原理实验指导书资料.docx_第12页
第12页 / 共31页
微机原理实验指导书资料.docx_第13页
第13页 / 共31页
微机原理实验指导书资料.docx_第14页
第14页 / 共31页
微机原理实验指导书资料.docx_第15页
第15页 / 共31页
微机原理实验指导书资料.docx_第16页
第16页 / 共31页
微机原理实验指导书资料.docx_第17页
第17页 / 共31页
微机原理实验指导书资料.docx_第18页
第18页 / 共31页
微机原理实验指导书资料.docx_第19页
第19页 / 共31页
微机原理实验指导书资料.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

微机原理实验指导书资料.docx

《微机原理实验指导书资料.docx》由会员分享,可在线阅读,更多相关《微机原理实验指导书资料.docx(31页珍藏版)》请在冰点文库上搜索。

微机原理实验指导书资料.docx

微机原理实验指导书资料

实验一并行接口8255应用实验

一、实验目的

1.掌握8255工作方式0的使用方法;

2.掌握8255I/O口的输入输出使用方法;

3.了解8255、电平开关、LED发光二极管的电路连接。

二、实验内容

1、逻辑电平开关和LED显示电路如图1-1所示,8255的电路连接如图1-2所示。

2、利用8255C口作为并行数据的输入端(逻辑电平开关实现),A口作为并行数据的输出端(LED显示电路实现),当电平开关拨到上方时对应发光二极管亮,拨到下方时对应发光二极管灭,编写程序。

图1-1逻辑电平开关和LED显示电路

图1-28255接线电路

三、接线方案

PC0~PC7/8255接K0~K7/逻辑电平开关

PA0~PA7/8255接L0~L7/LED显示

CS/8255接Y1/IO地址

图1-3实验线路

四、编程提示及流程图

1、8255控制寄存器端口地址—28BH;A口地址—288H;B口地址—289H;C口地址—28AH。

2、参考程序流程图如图1-4所示。

图1-4参考程序流程图

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图1-3实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

;*******************************;

;*8255方式0的C口输入,A口输出*;

;*******************************;

datasegment

io8255aequ288h

io8255bequ28bh

io8255cequ28ah

dataends

codesegment

assumecs:

code

start:

movax,data

movds,ax

moves,ax

main:

movdx,io8255b;设8255为C口输入,A口输出

moval,();计算控制字

outdx,al

inout:

movdx,();从C口输入一数据

inal,dx

movdx,();从A口输出刚才自C口

outdx,al;所输入的数据

jmpinout;跳转,则继续自C口输入,A口输出

codeends

endstart

七、思考题

1、根据程序要求补充实验程序,并执行程序观察现象;

2、修改程序,电平开关拨到上方时发光二极管灭,拨到下方时发光二极管亮。

实验二交通灯模拟控制实验

一、实验目的

1.进一步掌握8255并行口的使用方法;

2.了解十字路口交通灯的模拟控制。

二、实验内容

分别利用三个发光二极管模拟南北路口和东西路口的红、黄、绿灯,通过编程使六个发光二极管按交通灯变化规律执行。

三、接线方案

PC0~PC7/8255接L0~L7/LED显示

CS/8255接Y1/IO地址

图2-1实验线路

四、编程提示及流程图

1、8255控制寄存器端口地址—28BH;A口地址—288H;B口地址—289H;C口地址—28AH。

2、交通灯变化规律要求:

(1)南北路口绿灯、东西路口红灯同时亮30秒左右;

(2)南北路口的黄灯闪烁若干次,东西路口红灯继续亮;(3)南北路口红灯、东西路口绿灯亮30秒左右;(4)南北路口红灯继续亮,东西路口黄灯闪烁若干次;(5)依次重复。

2、参考程序流程图如图2-2所示。

图2-3参考程序流程图

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图2-1实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

;***********************************;

;*十字路口红绿灯模拟演示程序*;

;*端口各灯的设置:

*;

;*1红1黄1绿002红2黄2绿*;

;***********************************;

datasegment

io8255aequ28ah

io8255bequ28bh

portc1db24h,44h,04h,44h,04h,44h,04h;六个灯可能

db81h,82h,80h,82h,80h,82h,80h;的状态数据

db0ffh;结束标志

dataends

codesegment

assumecs:

code,ds:

data

start:

movax,data

movds,ax

movdx,io8255b

moval,();8255控制字

outdx,al;设置8255为C口输出

movdx,io8255a

re_on:

movbx,0

on:

moval,portc1[bx]

cmpal,0ffh

jzre_on

outdx,al;点亮相应的灯

incbx

movcx,50;参数赋初值

testal,21h;是否有绿灯亮

jzde1;没有,短延时

movcx,500;有,长延时

de1:

movdi,9000;di赋初值9000

de0:

decdi;减1计数

jnzde0;di不为0

loopde1

jmpon;转到on

codeends

endstart

七、思考题

1、根据要求补充和修改实验程序,达到实验要求;

2、修改电路和程序,利用其他I/O实现交通灯功能;

3、若实现按键修改红绿灯时间,程序和硬件应该怎样设计。

实验三可编程定时器8254应用实验

一、实验目的

1.掌握8254各种工作方式的使用;

2.掌握8254的基本工作原理和编程方法。

二、实验内容

将8254的计数器0设置为工作方式2,计数器的计数初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用OUT0接LED发光二极管,观察电平的变化(当输入N+1个脉冲后OUT0变高电平)。

图3-18254接口线路

三、接线方案

GATE0/8254接+5V

CLK0/8254接单脉冲

CS/8254接Y0/IO地址

OUT0/8254接L0/LED

DI、RW、E/核心板接DI、RW、E/LCD液晶

D0~D7/核心板接D0~D7/LCD液晶

图3-2实验线路

四、编程提示及流程图

1、参考程序流程图如图3-3所示。

图3-3参考程序流程图

2、8254控制寄存器地址283H;

计数器0地址280H;

计数器1地址281H;

计数器2地址282H;

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图3-3实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

;*************************;

;*8254计数器0计数实验*;

;*************************;

io8253aequ283h

io8253bequ280h

codesegment

assumecs:

code

start:

moval,();8254计数器0为方式2,二进制计数

movdx,io8253a

outdx,al

movdx,io8253b;送计数初值为0FH

moval,0fh

outdx,al

lll:

inal,dx;读计数初值

calldisp;调显示子程序

movcx,0ffffh

s1:

loops1

jmplll

dispprocnear;显示子程序

pushdx

andal,0fh;首先取低四位

movdl,al

cmpdl,9;判断是否<=9

jlenum;若是则为'0'-'9',ASCII码加30H

adddl,7;否则为'A'-'F',ASCII码加37H

num:

adddl,30h

movah,02h;LCD显示

int21h

popdx

ret;子程序返回

dispendp

codeends

endstart

七、思考题

1、根据要求补充和修改实验程序,达到实验要求;

2、修改程序和硬件,利用计数器1或计数器2完成此内容。

实验四8254控制继电器实验

一、实验目的

1.了解微机控制直流继电器的典型电路及方法;

2.进一步熟悉8255、8254的使用方法。

二、实验内容

实验电路如图4-1所示,并进行实验电路的搭建,由计数器1输出所需的控制信号,经8255的I/O口输出来驱动继电器的控制电路。

继电器常开触点串联一个发光二极管,编程使用8254定时,让继电器实现闭合5秒钟(指示灯亮),断开5秒钟(指示灯灭)。

图4-1实验线路

三、接线方案

CS/8254接Y0/IO地址

GATE0/8254接+5V

CLK0/8254接1M时钟

OUT0/8254接CLK1/8254

GATE1/8254接+5V

OUT1/8254接PC7/8255

PC0/8255接继电器

CS/8255接Y1/IO地址

四、编程提示及流程图

1、参考程序流程图如图4-2所示。

图4-2参考程序流程图

2、将8254计数器0设置为方式3、计数器1设置为方式0并联使用,CLK0接1MHZ时钟,设置两个计数器的初值(乘积为5000000)启动计数器工作后,经过5秒钟OUT1输出高电平。

通过8255C口查询OUT1的输出电平,用C口PC0输出开关量控制继电器动作。

3、继电器开关量输入量输入“1”时,继电器常开触点闭合,发光二极管接通,指示灯亮,输入“0”时断开,指示灯灭。

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图4-1实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

;***************************;

;*继电器控制*;

;***************************;

io8253aequ280h

io8253bequ281h

io8253cequ283h

io8255cequ28ah

io8255ctlequ28bh

codesegment

assumecs:

code

start:

movdx,io8255ctl;设8255为PC7输入,PC0输出

moval,()

lll:

outdx,al

movdx,io8255c

moval,01;将PC0置位

outdx,al

calldelay;延时5s

moval,0;将PC0复位

outdx,al

calldelay;延时5s

jmplll;转lll

delayprocnear;延时子程序

pushdx

movdx,io8253c;设8254计数器0为方式3

moval,()

outdx,al

movdx,io8253a

movax,10000;写入计数器初值10000

outdx,al

moval,ah

outdx,al

movdx,io8253c

moval,();设计数器1为工作方式0

outdx,al

movdx,io8253b

movax,500;写入计数器初值500

outdx,al

moval,ah

outdx,al

ll2:

movdx,io8255c

inal,dx;查询8255的PC7是否为高电平

andal,080h

jzll2;若不是则继续

popdx

ret;定时时间到,子程序返回

delayendp

codeends

endstart

七、思考题

1、分析程序和电路,理解计数器0和计数器1并联的使用方法;

2、修改程序和电路,可否使用2MHZ时钟实现(5秒)功能。

实验五DAC0832数模转换实验

一、实验目的

1.了解数/模转换器的基本原理;

2.掌握DAC0832芯片的使用方法。

二、实验内容

实验电路如图5-1所示,DAC0832采用单缓冲方式,具有单双极性输出端(图中的Ua、Ub),利用示波器观察单极性输出端和双极性输出端的电压波形,验证数字与电压之间的线性关系。

实验要求:

输出

(1)锯齿波;

(2)正弦波。

图5-1实验线路

三、接线方案

CS/0832接Y2/IO地址

四、编程提示及流程图

1、参考程序流程图如图5-2所示。

a.锯齿波b.正弦波

图5-2参考程序流程图

2、8位D/A转换器DAC0832的口地址为290H,输入数据与输出电压的关系为:

Ua=UREF×N/256;Ub=-2UREF×N/256-5(UREF表示参考电压,N表示数据),为了编程方便参考电压为5.12V。

3、产生锯齿波只须将输出到DAC0832的数据有0循环递增。

产生正弦波可根据正弦函数建一个数字量表,取值范围为一个周期。

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图4-1实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

1、锯齿波

;**********************;

;*数/模转换实验1*;

;*产生锯齿波*;

;**********************;

io0832aequ290h

codesegment

assumecs:

code

start:

movcl,0

movdx,io0832a

lll:

moval,cl

outdx,al

addcl,10

jmplll;若无则转LLL

movah,4ch;返回

int21h

codeends

endstart

2、正弦波

;**********************;

;*数/模转换实验2*;

;*产生正弦波*;

;**********************;

datasegment

io0832aequ290h

sindb80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh

db0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96h

db80h,66h,4eh,38h,25h,15h,09h,04h

db00h,04h,09h,15h,25h,38h,4eh,66h;正弦波数据

dataends

codesegment

assumecs:

code,ds:

data

start:

movax,data

movds,ax

ll:

movsi,offsetsin;置正弦波数据的偏移地址为SI

movbh,32;一组输出32个数据

lll:

moval,[si];将数据输出到D/A转换器

movdx,io0832a

outdx,al

movcx,1

delay:

loopdelay;延时

incsi;取下一个数据

decbh

jnzlll;若未取完32个数据则转lll

jmpll

codeends

endstart

七、思考题

1、修改程序实现三角波功能;

2、修改程序,使锯齿波输出最大幅值为2.5V。

实验六ADC0809模数转换实验

一、实验目的

1.了解模/数转换器的基本原理;

2.掌握ADC0809芯片的使用方法。

二、实验内容

实验电路如图6-1所示,通过实验台上的电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),启动A/D转换器,读取转换结果,验证输入电压与转换后数字的关系。

图6-1实验线路

三、接线方案

CS/0809接Y3/IO地址

IN0/0809接0~5/直流信号

DI、RW、E/核心板接DI、RW、E/LCD液晶

D0~D7/核心板接D0~D7/LCD液晶

四、编程提示及流程图

1、参考程序流程图如图5-2所示。

图5-2参考程序流程图

2、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(16进制),采用延时方式采样数据;

3、ADC0809的IN0口地址为298H,IN1口地址为299H。

4、输入电压与转换后数字的关系:

N=Ui/(UREF/256),Ui为输入电压,UREF为参考电压,为了方便编程参考电压为5.12V。

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图4-1实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、观察实验现象,并记录。

若实验现象有误请重复第4~6步。

六、参考程序

;*******************************;

;*接收A/D转换器数据在屏幕上显示*;

;*******************************;

io0809aequ298h

codesegment

assumecs:

code

start:

movdx,io0809a;启动A/D转换器

outdx,al

movcx,0ffh;延时

delay:

loopdelay

inal,dx;从A/D转换器输入数据

movbl,al;将AL保存到BL

movcl,4

shral,cl;将AL右移四位

calldisp;调显示子程序显示其高四位

moval,bl

andal,0fh

calldisp;调显示子程序显示其低四位

jmpstart;若没有转START

dispprocnear;显示子程序

movdl,al

cmpdl,9;比较DL是否>9

jleddd;若不大于则为'0'-'9',加30h为其ASCII码

adddl,7;否则为'A'-'F',再加7

ddd:

adddl,30h;显示

movah,02

int21h

ret

dispendp

codeends

endstart

七、思考题

1、修改程序和电路,采用查询或中断方式实现模数转换;

2、编写程序,能否实现两路模拟量采样及显示功能。

实验七串行通信8251应用实验

一、实验目的

1.了解串行通信的基本原理;

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

二、实验内容

1.实验电路如图7-1和7-2所示,其中8254定时器用于产生8251的发送和接收时钟。

2.编写程序,在发送端(甲机)从键盘输入一个字符,将其ASCII码加1后发送出去,然后在接收端(乙机)接收到数据,并显示在显示屏上,实现数据的串行发送和接收。

图7-1发送端(甲机)实验线路

图7-2接收端(乙机)实验线路

三、接线方案

CLK0/8254接1M时钟

GATE0/8254接+5V

OUT0/8254接TX/RCLK/8251

CS/8254接Y0/IO地址

CS/8251接Y7/IO地址

DI、RW、E/核心板接DI、RW、E/LCD液晶

D0~D7/核心板接D0~D7/LCD液晶

TXD/8251(发送端)接RXD(MAX232模块)

键盘(发送端)接键盘接口(核心板)

RXD/8251(接收端)接TXD(MAX232模块)

四、编程提示及流程图

1、图示电路中8251的控制口地址为2B9H,数据口地址为2B8H;8254定时器的控制口地址为283H,定时器0的地址280H。

2、8254计数器的计数初值=时钟频率/(波特率×波特率因子),这里的时钟频率接1MHZ,波特率若选1200,波特率因子若选16,则计数器初值为52。

图7-3发送和接收参考程序流程图

五、实验步骤

1、连接USB通信电缆和电源线;

2、根据图7-1和7-2实验线路进行电路连接;

3、打开“HQFC-A微机接口”应用程序,新建或打开实验程序;

4、点击“编译”,并确保实验程序没有语法错误;

5、点击“构建”,将目标文件生产可执行文件(后缀为EXE);

6、点击“重构运行”,可执行文件(后缀为EXE)下载到实验设备中运行;

7、按键盘键值,观察现象,若实验现象有误请重复第4~6步。

六、参考程序

;************************;

;*8251串行通讯(发送)*;

;********************

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2