微机原理实验.docx
- 文档编号:16816491
- 上传时间:2023-07-17
- 格式:DOCX
- 页数:13
- 大小:22.04KB
微机原理实验.docx
《微机原理实验.docx》由会员分享,可在线阅读,更多相关《微机原理实验.docx(13页珍藏版)》请在冰点文库上搜索。
微机原理实验
实验三
一、实验目的
掌握8255A的编程原理。
二、实验内容
8255A的A口作为输入口,与逻辑电平开关相连。
8255A的B口作为输出口,与发光二极管相连。
编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。
三、实验原理介绍
本实验用到两部分电路:
开关量输入输出电路和8255可编程并口电路。
四、实验步骤
1、实验接线
CS0CS8255PA0~PA7K1~K8PB0~PB7LED1~LED8
2、编程并全速或单步运行。
3、全速运行时拨动开关,观察发光二极管的变化。
当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。
五、实验提示
8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。
8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。
实验中,8255A工作于基本输入输出方式(方式0)。
六、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。
例如:
K2置于L位置,则对应的LED2应该点亮。
七、程序框图(实验程序名:
t8255.asm)
八、程序源代码清单
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a6h;控制寄存器地址
movax,90h;设置为A口输入,B口输出
outdx,ax
start1:
movdx,04a0h;A口地址
inax,dx;输入
movdx,04a2h;B口地址
outdx,ax;输出
jmpstart1
codeends
endstart
实验四
一、实验目的
掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。
二、实验内容
8253计数器0,1,2工作于方波方式,观察其输出波形。
三、实验原理介绍
本实验用到两部分电路:
脉冲产生电路、8253定时器/计数器电路
四、实验步骤
1、实验连线:
CS0CS8253OUT08253CLK2OUT2LED1示波器OUT1
CLK3
8253CLK0,CLK3
8253CLK1
2、编程调试程序
3、全速运行,观察实验结果
五、实验提示
8253是计算机系统中经常使用的可编程定时器/计数器,其内部有三个相互独立的计数器,分别称为T0,T1,T2。
8253有多种工作方式,其中方式3为方波方式。
当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一半输出低电平。
实验中,T0、T1的时钟由CLK3提供,其频率为750KHz。
程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*4/3*10-6=0.05s)。
T2采用OUT0的输出为时钟,则在T2中设置初值为n时,则OUT2输出方波周期为n*0.05s。
n的最大值为FFFFH,所以OUT2输出方波最大周期为3276.75s(=54.6分钟)。
可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。
六、实验结果
程序全速运行后,LED1闪烁(周期为0.25s),OUT1示波器观察为方波,频率为15KHz。
七、程序框图(实验程序名:
t8253.asm)
八、程序源代码清单
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a6h;控制寄存器
movax,36h;计数器0,方式3
outdx,ax
movdx,04a0h
movax,7Ch
outdx,ax
movax,92h
outdx,ax;计数值927Ch
movdx,04a6h
movax,76h;计数器1,方式3
outdx,ax
movdx,04a2h
movax,32h
outdx,ax
movax,0;计数值32h
outdx,ax
movdx,04a6h
movax,0b6h;计数器2,方式3
outdx,ax
movdx,04a4h
movax,04h
outdx,ax
movax,0;计数值04h
outdx,ax
next:
nop
jmpnext
codeends
endstart
实验七
一、实验目的
1、熟悉串行通信的一般原理和8250的工原理。
2、了解RS--232串行接口标准及连接方法。
3、掌握8250芯片的编程方法。
二、实验内容
在实验箱与PC机(上位机)之间实现串行通信,主机每下传一个字符,如通讯正确则下位机返回一个同样的字符,如果不正确,则无返回或不相同。
三、实验原理介绍
实验原理图见8250串行接口电路。
由MAX232完成RS232电平和TTL电平的转换,由8250完成数据的收发。
8250内部有10个寄存器,分别对应着不同的IO口地址。
对不同的寄存器进行初始化或读出写入操作就可以完成与计算机的通信。
由于不能同时收发数据,所以8250又称为通用串行异步收发器,简写为:
UART。
8250实验电路的所有信号均已连好。
四、实验步骤
1、实验接线
利用串口电缆连接实验箱的串口和计算机的串口(COM1或COM2)
2、编写程序。
3、在实验箱上运行86编译系统,下载实验程序8250.asm,并全速运行。
4、实验箱退出86编译系统,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行端口(COM1或COM2),端口与步骤1一致,键入串口号即可,然后从键盘上输入字符,看返回字符是否正确。
欲退出T6UP.EXE,按回车键。
五、实验提示
实验中,通讯波特率选用9600bps。
上下位机均采用查询方式。
8250的端口地址为0480起始的偶地址单元。
实验中,上位机向下位机发送一个字符,下位机将接收到的字符返回。
事实上这就实现了串口通信的基本过程。
掌握了此实验中的编程方法再编制复杂的串行通信程序也就不难了。
串行通信和并行通信是计算机与外围设备进行信息交换的基本方法,二者有不同的特点。
简而言之,前者电路及连线简单,最少用三根线就可以实现串口通信,但通信速率慢,适用于长距离慢速通信;后者电路及连线复杂,成本较高,但通信速率快,适用于短距离高速通信。
六、程序框图8250.ASM
七、程序源代码清单
;*******************************************
codesegment;definedatasegment
assumecs:
code
org0100h
start:
movbx,0480h
movdx,bx
adddx,6
movax,80h
outdx,ax
movdx,bx
movax,0ch;000ch---9600,clk=4.77MHZ/4
;AL=4770000/16/9600/4=8
outdx,ax
adddx,2
movax,0h
outdx,ax
adddx,4
movax,07;nope,8bit,1stop
outdx,ax
movdx,bx
adddx,2;nointerupt
movax,0
outdx,ax
adddx,8h
inax,dx
movdx,bx
inax,dx
crd:
callrecv
callsend
jmpcrd
send:
pushax
movbx,0480h
movdx,bx
adddx,0ah
inax,dx
testax,20h
jnzrecv2
popax
jmpsend
recv2:
popax
movdx,bx
outdx,ax
ret
recv:
movbx,0480h
movdx,bx
adddx,0ah
inax,dx
testax,01h
jnzrecv1
jmprecv
recv1:
movdx,bx
inax,dx
ret
codeends;endofcodesegment
endstart;endassembly
实验十
一、实验目的
1、掌握8259A的工作原理。
2、掌握编写中断服务程序方法。
3、掌握初始化中断向量的方法。
二、实验内容
用单脉冲发生器作为中断源,在中断服务程序中,通过74LS273输出一个数据,以点亮或熄灭与中断源相对应位置的LED。
三、实验原理介绍
本实验用到三部分电路:
单脉冲发生器电路、简单I/O口扩展电路和8259中断控制器电路。
四、实验步骤
1、实验接线
CS0CS8259CS1CS273O0LED1P+IR0
INTINTRINTAQINTA
2、编译调试程序
3、全速运行程序,按动单脉冲按键,观察LED的亮灭情况。
五、实验提示
1、8259的使用说明请详细阅读教科书。
2、8086的中断系统是向量中断方式。
内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量(中断入口地址)。
不同中断类型的中断向量在表内有对应的偏移地址,其计算方法是:
中断类型*4。
3、中断类型由8259通过数据总线送给8086,8086内部电路会将该类型值自动乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序。
请仔细研读8259的工作时序。
4、中断类型的高5位由8259寄存器ICW2决定,低3位由中断源IRx的编码自动填入。
IR0~IR7的编码分别为000,001,010,011,100,101,110,111。
六、实验结果
全速运行程序,按一下单脉冲,LED1点亮;再按一下,LED1熄灭,如此循环往复。
七、实验程序框图(实验程序名:
8259.asm)
八、程序源代码清单
con8279equ0492h
dat8279equ0490h
assumecs:
code
codesegmentpublic
org100h
start:
jmpstart1
segcoddb3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h
start1:
movdx,con8279
moval,10h
outdx,al;编码扫描键盘,双键锁定
moval,2ah;10分频得到100KHz
outdx,al
callblack
rkey:
movdx,con8279
disla2:
inax,dx;读入状态字
andax,07h
jzdisla2;没有按键则等待!
movdx,dat8279
inax,dx;读入键值
andax,0ffh
movbx,ax
nop;设断点观察键值
callblack;总清显示RAM
nop
disp:
movdi,offsetsegcod
movax,08h;工作方式,16位,左入
movdx,con8279
outdx,ax
movax,90h
movdx,con8279
outdx,ax;写显示RAM命令,地址自增
movdx,dat8279
pushbx
andbx,0f0h
movcl,4
shrbx,cl
adddi,bx
moval,cs:
[di]
movah,0
outdx,ax;写RAM0
nop
nop
movdi,offsetsegcod
popbx
andbx,0fh
adddi,bx
moval,cs:
[di]
movah,0
outdx,ax;写RAM1
nop
nop
pushcx
jmprkey
black:
movdx,con8279
movax,0d1h
outdx,ax;显示RAM全部清零
movcx,80h;循环次数
clsb:
nop
nop
loopclsb
ret
codeends
endstart
实验十一
一、实验目的
掌握DMA工作方式的原理和DMA控制器8237—5的编程使用方法。
二、实验内容
用DMA方式将02000H到020FFH共100H个字节的传送到02100H起的100H个单元里。
源地址单元内容初始化为55H,传送结束后目的地址的内容也应是55H。
三、实验原理介绍
原理图见8237DMA传输电路
四、实验步骤
1、实验接线:
CS6CS8237
2、编辑调试程序
3、光标置于“位置一”,点击“ToCur”,运行到位置一处,观察初始化的情况;光标置于“位置二”,点击“ToCur”,运行到位置二处观察内存的变化。
五、实验提示
1、8237的端口地址偶地址有效
2、本实验是Memory到Memory的DMA传送过程。
在MM传送方式中,要占用两个通道,通道0是DMA读方式,通道1是DMA写方式。
读写的长度由通道1控制,DMA的启动只能由通道零软件请求启动。
六、实验结果
在位置一、位置二设断点全速运行程序,运行到位置一处时从02000H到020FFH共100H个单元里为55H,从02100H起的100H个单元里为0;运行到位置二时02000H到021FFH共200H个单元里都为55H。
七、实验程序框图(实验程序名:
t8237.asm)
八、程序源代码清单
assumecs:
code
codesegmentpublic
org100h
start:
movbx,0
movsi,1000h
moval,55h
movcx,100h
fil:
mov[si],al
incsi
loopfil;2000h起初始化256字节为55h
movsi,1100h
moval,00h
movcx,100h
fil1:
mov[si],al
incsi
loopfil1
movcx,100h;2100h起初始化256字节为00h
rdma:
movdx,0f01ah;位置一
movax,0
outdx,ax;主清
movdx,0f000h
movax,bx
outdx,ax
movax,20h
outdx,al;通道0基地址寄存器写入2000h
movdx,0f004h
movax,bx
outdx,ax
movax,21h
outdx,ax;通道1基地值寄存器写入2100h
movdx,0f002h
movax,0ffh
outdx,ax
movax,0
outdx,ax;通道0基字节数计数器写入ffh
movdx,0f006h
movax,0ffh
outdx,ax
movax,0
outdx,ax;通道1基字节数计数器写入ffh
movdx,0f016h
movax,88h
outdx,ax;通道0模式:
块传输,DMA读
movax,85h
outdx,ax;通道1模式:
块传输,DMA写
movdx,0f01eh
movax,0fh
outdx,ax;屏蔽四个通道
movdx,0f010h
movax,03h
outdx,ax;命令寄存器,允许存储器到存储器传输
movdx,0f012h
movax,4
outdx,ax;通道0请求设置
wait:
movdx,0f010h
inal,dx
andal,02h
jzwait;DMA完否?
nop
nop;位置二
jmpstart
codeends
endstart
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 实验