微机实验程序.docx
- 文档编号:12077026
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:31
- 大小:32KB
微机实验程序.docx
《微机实验程序.docx》由会员分享,可在线阅读,更多相关《微机实验程序.docx(31页珍藏版)》请在冰豆网上搜索。
微机实验程序
1
一、实验目的
1、熟悉74LS273,74LS244的应用接口方法。
2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
二、实验内容
逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。
三、实验原理介绍
本实验用到两部分电路:
开关量输入输出电路,简单I/O口扩展电路。
四、实验步骤
1、实验接线:
(表示相互连接)
CS0CS244CS1CS273K1~K8IN0~IN7(对应连接)O0~O7LED1~LED8
2、编辑程序,单步运行,调试程序
3、调试通过后,全速运行程序,观看实验结果。
4、编写实验报告。
五、实验提示
74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。
六、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。
例如:
K2置于L位置,则对应的LED2应该点亮。
七、程序框图(实验程序名:
T244273.ASM)
八、程序源代码清单
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a0h;74LS244地址
inal,dx;读输入开关量
movdx,04b0h;74LS273地址
outdx,al;输出至LED
jmpstart
codeends
endstart
一、实验目的
1.掌握PC机外存扩展的方法。
2.熟悉6264芯片的接口方法。
3.掌握8086十六位数据存储的方法。
二、实验内容
向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。
三、实验原理介绍
本实验用到存储器电路,见硬件说明。
四、实验步骤
1、实验接线
本实验无需接线。
2、编写调试程序
3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。
五、实验提示
1、RAM区的地址为02000H,编程时可段地址设为01000H,则偏移地址为1000H。
2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。
3、6264、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。
本实验所进行的内存置数在程序中经常用到。
计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。
六、实验结果
在断点1处内存区02000H~020FFH单元为00H;在断点2处偶地址为AAH,奇地址为55H
七、程序框图(实验程序名:
RAM.ASM)
八、程序源代码清单
codesegment
assumecs:
code
org0100h
start:
movax,0100h
movds,ax;数据段地址
moves,ax
movsi,1000h;偏移地址
movcx,0100h;循环次数
moval,0
intram:
mov[si],al
incsi
loopintram
movsi,1000h;设置断点处
movcx,100h
movax,55aah
fil:
mov[si],ax;RAM区循环置数
incsi
;mov[si],ah
incsi
loopfil
nop;设置断点处
jmpstart
codeends
endstart
一、实验目的
掌握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
一、实验目的
熟悉A/D转换的基本原理,掌握ADC0809的使用方法。
二、实验内容
从ADIN0输入一路模拟信号,启动A/D转换,用简单输入口(74LS244)查询EOC信号,转换结束后查看转换结果。
同时用万用表测量输入的模拟电压,与转换后的数字量比较。
作图,横坐标是模拟电压,纵坐标是转换的数字量,检查A/D转换的线性度。
其它通道实验与通道0类似,相应修改地址即可。
三、实验原理介绍
本实验用到两部分电路:
简单I/O口扩展电路、A/D、D/A电路
四、实验步骤
1、实验连线
AN0ADIN0CS0CS0809CS1CS244EOCIN0
2、用实验箱左上角的“VERF.ADJ”电位器调节ADC080912脚上的参考电压至5V。
3、编写程序并全速运行。
4、检查显示数据是否与电位器输出的电压相符合。
五、实验提示
实验电路中启动信号START与地址锁存信号相连,所以启动A/D转换的方法为:
MOVDX,ADDRESS;ADDRESS是ADC0809的端口地址
OUTAL,DX;发片选及IOW信号,启动0通道
六、实验结果
在输入电压AN0分别为0V,1V,2V,3V,4V,5V时显示数据分别为00H,33H,66H,99H,0CCH,0FFH(数据低位略有偏差属正常现象)。
七、程序框图(实验程序名:
t0809.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,04a0h
movax,34h
outdx,ax;启动通道0
wait1:
movdx,04b0h;CS244
inax,dx;读EOC
andax,1
cmpax,1
jnewait1;如果EOC=0,waiting....
movdx,04a0h
inax,dx;读转换结果
andax,0ffh
movbx,ax
nop;
disp:
movdi,offsetsegcod
movax,08h;工作方式,16位,左入
movdx,con8279
outdx,ax
movax,90h
movdx,con8279
outdx,ax;写显示RAM命令,地址自增
movdx,dat8279
pushbx
andbx,0f0h;取高4位
movcl,4
shrbx,cl
adddi,bx
moval,cs:
[di]
movah,0
outdx,ax;写RAM0
nop
nop
movdi,offsetsegcod
popbx
andbx,0fh;取低4位
adddi,bx
moval,cs:
[di]
movah,0
outdx,ax;写RAM1
delay:
movcx,0ffffh;timedelay
delay1:
nop
nop
loopdelay1
jmpstart1
codeends
endstart
一、实验目的
熟悉数模转换的基本原理,掌握D/A的使用方法。
二、实验内容
利用D/A转换器产生锯齿波和三角波。
三、实验原理图
本实验用A/D、D/A电路
四、实验步骤
1、实验接线
CS0CS0832示波器DOUTDS跳线:
12
2、用实验箱左上角的“VERF.ADJ”电位器调节0832的8脚上的参考电压至5V。
3、调试程序并全速运行,产生不同波形。
4、用示波器观察波形。
五、实验提示
利用电位器“ZERO.ADJ”可以调零,“RANGE.ADJ”电位器调整满偏值。
DAC0832在本实验中,工作在双缓冲接口方式下。
当地址线A1=0时可锁存输入数据;当A1=1时,可起动转换输出。
所以要进行D/A转换需分二步进 行,方法如下:
MOVDX,ADDRESS;ADDRESS片选信号偶地址
MOVAL,DATA
OUTDX,AL
ADDDX,2
OUTDX,AL
六、程序框图
程序一产生锯齿波程序二产生三角波
(实验程序名:
dac-1.asm)(实验程序名:
dac-2.asm)
七、程序源代码清单
dac-1.asm
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a0h
up1:
movbx,0
up2:
movax,bx
outdx,ax;锁存数据
movdx,04a2h
outdx,ax;输出使能
movdx,04a0h
incbx;数据加一
jmpup2
codeends
endstart
dac-2.asm
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a0h
movbx,0
up:
movax,bx
outdx,ax;锁存数据
movdx,04a2h
outdx,ax;输出使能
incbx
movdx,04a0h
cmpbx,0ffh
jneup;产生三角波上升沿
down:
movax,bx
outdx,ax;锁存数据
movdx,04a2h
outdx,ax;输出使能
decbx
movdx,04a0h
cmpbx,0
jnedown;产生三角波下降沿
jmpup
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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 实验 程序