试为8086系统的 pc扩充8个中断,设计8086处理硬件中断过程电路并给出相应的驱动程序

接口作业参考_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
接口作业参考
上传于||暂无简介
阅读已结束,如果下载本文需要使用
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩17页未读,继续阅读
你可能喜欢第一部分 系统介绍
第一部分& 系统介绍
&&&&&&&&&&&&
2、EL-MUT-III型微机教学实验系统外形美观,具有优良的电特性、物理特性,便于安装,运行稳定,可扩展性强。
(二)、硬件资源
2、脉冲产生电路
(1)、电路原理
该电路由1片74LS161、1片74LS04、1片74LS132组成。CLK0是6MHz,输出时钟为该CLK0的2分频(CLK1),4分频(CLK2),8分频(CLK3),16分频(CLK4),相应输出插孔 (CLK0~CLK4)。
3、开关量输入输出电路
(1)、电路原理
开关量输入电路由8只开关组成,每只开关有两个位置H和L,一个位置代表高电平,一个位置代表低电平。对应的插孔是:K1~K8。开关量输出电路由8只LED组成,对应的插孔分别为LED1~LED8,当对应的插孔接低电平时LED点亮。原理图如下:
&4、简单I/O口扩展电路
(1)、电路原理
输入缓冲电路由74LS244组成,输出锁存电路由上升沿锁存器74LS273组成。74LS244是一个扩展输入口,74LS273是一个扩展输出口,同时它们都是一个单向驱动器,以减轻总线的负担。74LS244的输入信号由插孔IN0~IN7输入,插孔CS244是其选通信号,其它信号线已接好;74LS273的输出信号由插孔O0~O7输出,插孔CS273是其选通信号,其它信号线已接好。其原理图如下:
5、CPLD译码电路
(1)、电路原理
该电路由EPM7128、EPM7032、IDC10的JTAG插座、两SIP3跳线座组成。其中EPM7128为系统CPLD,EPM7032为用户CPLD,它两共用一下JTAG插座,可通过跳线选择,当两跳线座都1,2相连时为系统CPLD,当两跳线座都2,3相连时为用户CPLD使用。LCS0~LCS7为用户CPLD输出。用户不得对系统CPLD编程。原理图如下:
&6、8279键盘、显示电路
(1)、电路原理
8279显示电路由6位共阴极数码管显示,74LS244为段驱动器,75451为位驱动器,可编程键盘电路由1片74LS138组成,8279的数据口,地址,读写线,复位,时钟,片选都已经接好,键盘行列扫描线均有插孔输出。键盘行扫描线插孔号为KA0~KA3;列扫描线插孔号为RL0~RL7;8279还引出CTRL、SHIFT插孔。六位数码管的位选、段选信号可以从8279引入,也可以有外部的其他电路引入,原理图如下:
7、8250串行接口电路
(1)、电路原理
该电路由一片8250,一片MAX232组成,该电路所有信号线均已接好。原理图如下:
&&8、8255并行接口电路
(1)、电路原理
该电路由1片8255组成,8255的数据口,地址,读写线,复位控制线均已接好,片选输入端插孔为8255CS,A,B,C三端口的插孔分别为:PA0~PA7,PB0~PB7,PC0~PC7.电路原理图如下:
9、8237 DMA传输电路
(1)、电路原理
该电路由一片8237、一片74LS245、一片74LS273、一片74LS244组成,DRQ0,DRQ1是DMA请求插孔,DACK0、DACK1是DMA响应信号插孔。SN74LS373提供DMA期间高8位地址的锁存,低8位地址由端口A0~A7输出。74LS245提供高8位存储器的访问通道。DMA0~DMA3是CPU对8237内部寄存器访问的通路。原理图如下:
10、A/D、D/A电路
(1)、电路原理
八路八位A/D实验电路由一片ADC0809,一片74LS04,一片74LS32组成,该电路中,ADIN0—ADIN7是ADC0809的模拟量输入插孔,CS0809是0809的AD启动和片选的输入插孔,EOC是0809转换结束标志,高电平表示转换结束。齐纳二极管LM336-5提供5V的参考电源,ADC0809的参考电压,数据总线输出,通道控制线均已接好,八位双缓冲D/A实验电路由一片DAC0832。一片74LS00,一片74LS04,一片LM324组成,该电路中除DAC0832的片选未接好外,其他信号均已接好,片选插孔标号CS0832。输出插孔标号DAOUT。该电路为非偏移二进制D/A转换电路,通过调节POT3,可调节D/A转换器的满偏值,调节POT2,可调节D/A转换器的零偏值。
11、8253定时器/计数器电路
(1)、电路原理
该电路由1片8253组成,8253的片选输入端插孔CS8253,数据口,地址,读写线均已接好,T0、T1、T2时钟输入分别为8252CLK0、8253CLK1、8253CLK2。定时器输出,GATE控制孔对应如下:OUT0、GATE0、OUT1、GATE1、OUT2、GATE2、CLK2。原理图如下:
注:GATE信号无输入时为高电平 
12、8259中断控制电路
(1)、电路原理
CS8259是8259芯片的片选插孔,IR0~IR7是8259的中断申请输入插孔。DDBUS是系统8位数据总线。INT插孔是8259向8086CPU的中断申请线,INTA是8086的中断应答信号。
&&&&&&&&&&&&&&&&&&&&&&&&
13、存储器电路
(1)、电路原理
该电路由一片2764、一片27256、一片6264、一片62256、三片74LS373组成,2764提供监控程序高8位,27256提供监控程序低8位,6264提供用户程序及数据存储高8位,2764提供监控程序低8位,74LS373提供地址信号。ABUS表示地址总线,DBUS是数据总线。D0~D7是数据总线低八位,D8~D15是数据总线高八位。其他控制总线如:MEMR,MEMW和片选线均已接好。在8086系统中,存储器分成两部分,高位地址部分(奇字节)和低位地址部分(偶字节)。当A0=1时,片选信号选中奇字节;当A0=0时,选中偶字节。原理图如下:
14、六位LED数码管驱动显示电路
1)、电路原理该电路由六位LED数码管、位驱动电路、端输入电路组成,数码管采用动态扫描的方式显示。
具体见原理图,图中用75451作数码管的位驱动。跳线开关用于选择数码管的显示源,可外接,也可选择8279芯片。
基本实验(8086)
实验一&& I/O 端口实验
一、实验目的
&& 1、 熟悉74LS273,74LS244的应用接口方法。
&& 2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
二、实验设备
&& MUT—Ⅲ型实验箱、8086CPU模块。
三、实验内容
扩展输入,237扩展输出控制开关输入
12442778086
四、实验原理介绍
本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。
五、实验步骤
1、实验接线:(&表示相互连接)
CS0 &CS244; CS1&CS273; 平推开关的输出K1~K8 & IN0~IN7(对应连接); O0~O7&LED1~LED8。
2、编辑程序,单步运行,调试程序
3、调试通过后,全速运行程序,观看实验结果。
六、实验提示
74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:
K2置于L位置,则对应的LED2应该点亮。
八、程序框图(实验程序名:
T244273.ASM)
九、程序源代码清单
assume & cs:code
code &&&&& segment
&&&&&&& org&&&&&&&& 100h
start:&&& mov&&&&&&& dx,04a0h&&&&&&&
in&&& &&&& al,dx&&&&&&&&&&
&&&&&&& mov&&&&&&& dx,04b0h&&&&&&&
out&& &&& dx,al&&&&&&&&&&
& &&&&&&jmp&& &&& start
code& &&& ends
end&& &&& start
KK2——LED
4I/O244273LED
实验二&& 8255键盘扫描与LED数码管显示实验
一、实验目的
掌握8255A的编程原理。
二、实验设备
&& MUT—Ⅲ型实验箱、8086CPU模块。
三、实验内容
扩展扫描3X8行列式键盘,由一位LED数码管显示
四、实验原理介绍
本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。
五、实验步骤
1、实验接线
CS0&CS8255;&
PA0~PA7& RL10~RL17;&
PB0~PB7& LED-A~LED-DP;
PC0~PC2&KA10~KA12;PC3&LED1。
&&& 2、编程并全速或单步运行。
3、全速运行时按动键盘,观察数码管的变化。
六、实验提示
8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为输出用,本实验也是如此。实验中,8255A工作于基本输入输出方式(方式0)。
七、实验结果
本实验为对3X8键盘(一行有8个按钮,共三行.如第一行8个按钮对应实验箱上键盘区最上一行6个加上下一行前两个,逐次类推)逐行扫描实验,每按一个键通过数码管显示其值.
如一行一列显示0,二行三列显示8. 逐次类推.
八、程序框图(实验程序名:t8255.asm)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
九、程序源代码清单
assume &&&&&&&& cs:code
code &&&&&&&&&&&& segment
org &&&&&&& 100h
start:& &&&&&&&&&& mov&&&&&&& dx,04a6h&&&&&&& ;
mov &&&&& ax,90h&&&&&&&&&&& ;A04A0H
;B04A2H,C04A4H
&&&& dx,ax
check0:&&&&&&&&& mov
&&&&& ax,00h
mov &&&&& dx,04a4h
out &&&&&&& dx,ax
mov &&&&& dx,04a0h
in& &&&&&&& ax,dx
cmp &&&&& al,0ffh
je& &&&&&&& check0
mov&&&&&&& cx,05ffh
delay:&&&&&&&&&&&& loop
&&&&& delay&&&&&& &&&&&&&&
mov& &&& cl,3
mov &&&& ah,0
mov& &&& al,
contin: &&&&&&&&& push &&&&& ax
&&&&&&& &&&&&& mov& &&& dx,04a4h
&&&&&&& &&&&&& out& &&&&& dx,al
&&&&&&& &&&&&& mov& &&& dx,04a0h
&&&&&&& &&&&&& in&& &&&&& al,dx
&&&&&&& &&&&&& mov& &&& ah,al
&&&&&&& &&&&&& cmp& &&& ah,0ffh
&&&&&&& &&&&&& jne& &&&&&& next
&&&&&&& &&&&&& pop& &&&& ax
&&&&&&& &&&&&& ror& &&&&& al,1
&&&&&&& &&&&&& loop &&&&& contin
&&&&& &&&&&& jmp& &&&& check0
next: &&&&&&&&&&&& mov& &&& ch,cl&&&&&&&&&&&&&&&
&&&&&&& &&&&&& mov& &&& cl,7
begin0:&&&&&&&&&& shl& &&&&&& ah,1
&&&&&&& &&&&&& jnc& &&&&& goon
&&&&&&& &&&&&& loop &&&&& begin0
&&&&&& &&&& jmp &&&&&& check0
goon:&& &&&&&&& mov
&&&&& bl,cl&&&&&&&&&&&&&&&
& &&& dec& &&&&& ch&&&&&&&&&&&&&
&&& mov& &&& cl,3
&&&&&&& &&& shl &&&&&&& ch,cl
&&& &&& add &&&&&&&&&&&&& bl,ch
&&& mov& &&& bh,0
&&& &&& mov& &&& cx,bx&&&&&&&&&&&&&&
display:&&&&&&&&&& mov& &&& si,offset
&&&&&&& &&& add& &&&&& si,cx
&&& mov& &&& dx,04a4h
&&&&&&& &&& mov& &&& al,0fh
&&&&&&& &&& out& &&&&& dx,al
&&&&&&& &&& mov &&&&& al,[si]
&&& &&&&&&& mov& &&& dx,04a2h
&&& out& &&&&& dx,al
jmp&&&& check0&&&
discode& &&&&&& db& &&&&&& 3fh,06h,5bh,4fh,66h,6dh,7dh,07h
db&& &&&& 7fh,6fh,77h,7ch,39h,5eh,79h,71h&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
db&& &&&& 01h,02h,04h,08h,10h,20h,40h,80h&& ;
code &&&&& &&&&& ends
end &&&&&& &&&&&&&&&&&& start
&& E&&&&&&& &&&& C&&&&&&&&&&&&&&&&&& D
B&&&&&&&&&&&&&&&&&& A&&&&&&&&&&&&&&&&&& 9&&&&&&&&&&&&&&&&&& 8
7&&&&&&&&&&&&&&&&&& 6&&&&&&&&&&&&&&&&&& 5&&&&&&&&&&&&&&&&&& 4
3&&&&&&&&&&&&&&&&&& 2&&&&&&&&&&&&&&&&&& 1&&&&&&&&&&&&&&&&&& 0
实验三&& 8253定时实验
一、实验目的
掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。
二、实验设备
&& MUT—Ⅲ型实验箱、8086CPU模块、示波器。
三、实验内容
作为定时器,控制周期为0.5秒的方波,用一个发光二极管指示灯亮表示高电平,灭表示低电平,亮
四、实验原理介绍
本实验用到两部分电路:脉冲产生电路、8253定时器/计数器电路
五、实验步骤
1、实验连线:
CS0&CS8253& OUT0&8253CLK2&
OUT2&LED1&
示波器&OUT1
九、程序源代码清单
assume && cs:code
code &&&&&&& segment
org &&&&&&&&&& 100h
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,04a6h&&&&&&&&&&&& ;
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,36h&&&&&&&&&&&&&&&& ;03
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,04a0h
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,7Ch
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,92h
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax&&&&&&&&& ;927Ch
mov &&&&&&&& dx,04a6h
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,76h&&&&&&&&&&&&&&&& ;13
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,04a2h
mov &&&&&&&&&&& ax,32h
out &&&&&&&&&&&& dx,ax
mov &&&&&&&&&&& ax,0&&&&&&&&&&&&&&&&&&&& ;32h
out &&&&&&&&&&&& dx,ax
mov &&&&&&&&&&& dx,04a6h
mov &&&&&&&&&&& ax,0b6h&&&&&&&&&&&&&& ;23
out &&&&&&&&&&&& dx,ax
mov &&&&&&&&&&& dx,04a4h
mov &&&&&&&&&&& ax,04h
out &&&&&&&&&&&& dx,ax
mov &&&&&&&&&&& ax,0&&&&&&&&&&&&&&&&&&&& ;04h
out &&&&&&&&&&&& dx,ax
next:&&&&&&&&& nop
&&&&&&&&&&&&&&&&&& jmp&&&&&&&&&&& next
code& &&&&& ends&&&&
end&& &&&&& start&&&&
2、改变定时时钟的周期,加快一倍和放慢一倍。
3、改为跑表功能
KK2——(4)
KK3——00 0 0 0
实验四 8259中断控制及中断服务实验
一、实验目的
1、掌握8259A的工作原理。
2、掌握编写中断服务程序方法。
3、掌握初始化中断向量的方法。
二、实验设备
&&& MUT—Ⅲ型实验箱、8086CPU模块。
三、实验内容
用8259控制开关中断源输入中断,由LED数码管显示
3,,KK1、KK2、KK3、KK4时
四、实验原理介绍
本实验用到三部分电路:电平开关电路、简单I/O口扩展电路和8259中断控制器电路。
五、实验步骤
1、实验接线
CS0 &CS8259&& CS1 &CS273& O0~O7&LED1~LED8&& K1~K8&IR0~IR7&& INT&INTR&&&
INTA&QINTA
2、编译调试程序
3、全速运行程序,拨动某一电平开关,观察LED的变化情况。
六、实验提示
九、程序源代码清单
con8279 &&&&&&&&&& equ
&&&&&&&&& 0492h
dat8279 &&&&&&&&&&& equ
&&&&&&&& 0490h
assume &&&&&&&&&&&& cs:code
code &&&&&&&&&&&&&&&& segment&&& public
org &&&&&&&&&& 100h
start: &&&&&&&&&&&&&&&& jmp&&&&&&&&&&& start1
segcod&&&&&&&&&&&&&& db&&&&&&&&&&&&& 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h&
start1:&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,04a0h
mov &&&&&&&& ax,34h
out &&&&&&&&&& dx,ax&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; 0
wait1:&&& &&&&&&&&& mov
&&&&&&&& dx,04b0h&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;CS244
&&&&&&&&&&&&&&&&&&&&&&&&&&& in
&&&&&&&&&&&& ax,dx&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;
and &&&&&&&&& ax,1
cmp &&&&&&&& ax,1
jne &&&&&&&&&& wait1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;EOC=0,waiting....
mov &&&&&&&& dx,04a0h&&&&&&&&&&&&
in &&&&&&&&&&&& ax,dx&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;
and &&&&&&&&& ax,0ffh
mov &&&&&&&& bx,ax&&&&&&&&&&&&&&&&&&
nop&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
disp:&&&&&&&&&&&&&&&&&& mov& &&&&&& di,offset
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& ax,08h&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&& ;16
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& dx,con8279
&&&&&&&&&&&&&&&&&&&&&&&&&&& out&&& &&&& dx,ax
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& ax,90h&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& dx,con8279
&&&&&&&&&&&&&&&&&&&&&&&&&&& out&&& &&&& dx,ax&&&&&&&&&&&&&&&&&& &&&&&&& ;RAM
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& dx,dat8279
&&&&&&&&&&&&&&&&&&&&&&&&&&& push
&&&&&&& bx
&&&&&&&&&&&&&&&&&&&&&&&&&&& and&&
&&&&&& bx,0f0h&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov&
&&&&&& cl,4
&&&&&&&&&&&&&&&&&&&&&&&&&&& shr&&&
&&&&&& bx,cl
&&&&&&&&&&&&&&&&&&&&&&&&&&& add&&
&&&&&& di,bx
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& al,cs:[di]
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& ah,0
&&&&&&&&&&&&&&&&&&&&&&&&&&& out&&& &&&& dx,ax&&&&&&&&&&&&&&&&&& &&&&&&& ;RAM0
&&&&&&&&&&&&&&&&&&&&&&&&&&& nop
&&&&&&&&&&&&&&&&&&&&&&&&&&& nop
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& di,offset
&&&&&&&&&&&&&&&&&&&&&&&&&&& pop&
&&&&&&&&&&&&&&&&&&&&&&&&&&& and&&
&&&&&& bx,0fh&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& add&&
&&&&&& di,bx
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& al,cs:[di]
&&&&&&&&&&&&&&&&&&&&&&&&&&& mov& &&&&&& ah,0
&&&&&&&&&&&&&&&&&&&&&&&&&&& out&&& &&&& dx,ax&&&&&&&&&&&&&&&&&& &&&&& &&&&&& ;RAM1
delay:&&&&&&&&&&&&&&&& mov& &&&&&& cx,0ffffh&&& &&&&&&&&&&&&&&&&
;time delay
delay1:& &&&&&&&&&& nop
&&&&&&&& &&& &&&&&&&&&& nop
&&&&&&&& && &&&&&&&&&&&& loop
&&&&&&&& delay1
&&&&&&&& &&& &&&&&&&&&& jmp &&&&&&&&& start1&&&&&&&&
code&&&&&&&&&&&&&&&&&& ends
end &&&&&&&&&&&&&&&&&& tart
1、A/D0809
实验六&& D/A实验
一、实验目的
熟悉数模转换的基本原理,掌握D/A的使用方法。
二、实验设备
&&& MUT—Ⅲ型实验箱、8086CPU模块、示波器。
三、实验内容
&&&& 利用D/A转换器产生锯齿波和三角波。
四、实验原理图
本实验用A/D、D/A电路
五、实验步骤
1、 实验接线
示波器&DOUT&&
DS跳线:1 &2
2、用实验箱左上角的“VERF.ADJ”电位器调节0832的8脚上的参考电压至5V。
3、调试程序并全速运行,产生不同波形。
4、用示波器观察波形。
六、实验提示
&&& &利用电位器“ZERO.ADJ”可以调零,“RANGE.ADJ”电位器调整满偏值。
DAC0832在本实验中,工作在双缓冲接口方式下。
当A1=0时可锁存输入数据;当A1=1时,可起动转换输出。 所以要进行D/A转换需分二步进行,方法如下:
MOV&& DX,ADDRESS&&&&&& && ;ADDRESS片选信号偶地址
MOV&& AL,DATA&&&&&&
OUT&&& DX,AL&&&&&&&&&&&&&
;锁存数据
ADD&&& DX ,2&&&&&&&&&
OUT&&& DX,AL&&&&&&&&&&&&&
;启动转换
七、程序框图
程序一 产生锯齿波&&&&&&&
(实验程序名:dac-1.asm)&&
&&&&&&&&&&&&&&&&&&
八、程序源代码清单
assume &&&&&&&&&&&& cs:code
code &&&&&&&&&&&&&&&& segment
&&&&&&&& &&&&&&& org &&&&&&&&&&&& 100h
start:&&&&&&&&& &&&&&&&
mov& &&&&&&&&& dx,04a0h
up1:&&&&&&&&&& &&& mov
up2:&&&&&&&&&& &&& mov
&&&&&&&&&&&&&&&&&& &&& out &&&&&&&&&&& dx,ax & &&&&&&&&&&&&&& ;
&&&&&&&&&&&&&&&&&& &&& mov
&&&&&&&&&&&&&&&&&& &&& out &&&&&&&&&&& dx,ax & &&&&&&&&&&&&&& ;
&&&&&&&&&&&&&&&&&& &&& mov
&&&&&&&&&&&&&&&&&& &&& inc &&&&&&&&&&&& bx&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;
&&&&&&&&&&&&&&&&&& &&& jmp &&&&&&&&&&& up2
&&&&&&&& &&&&&&&
ends&&&&&&&&&&&
&&&&&& &&&
&&&&&&&& &&&&&&&
start&&&&&&
1、只采用通道2,且将采样数据经量纲转换后在4位LED显示器上显示出来。
其中:FFH&&--&& 255V/382.5V(255×1.5=382.5) 00H&&--&&
2、一个2路模拟量循回检测系统如图。
八、程序源代码清单
code &&&&&&& segment&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;define
data segment
assume && cs:code
org &&&&&&&&&& 0100h
start:&&&&&&&&&&&&&&&&&& mov
&&&&&&&& bx,0480h
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,6
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,80h
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx
&&&&&&&&&&&&&&&&&& mov&
&&&&&& ax,0ch&&&&&&&&&
&&&&& ;000ch---9600
,clk=4.77MHZ/4
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;AL=/
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,2
&&&&&&&&&&&&&&&&&& mov&&&&&&&&&& ax,0h
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,4&&&
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,07&&& &&&&&&&&&&&&&&&&&&&& ;no
pe,8 bit, 1 stop
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,2&&&&&&&&&&&&
;no interupt
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& ax,0
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,8h&&&&
&&&&&&&&&&&&&&&&&& in
&&&&&&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx&&&
&&&&&&&&&&&&&&&&&& in
&&&&&&&&&&&& ax,dx
crd:&&&&&&&&&&& call&&&&&&&&&&&& recv
&&&&&&&&&&&&&&&&&& call&&&&&&&&&&&& send
&&&&&&&&&&&&&&&&&& jmp&&&&&&&&&&& crd
send:&& && push&&&&&&&&&&&&&&&&&& ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& bx,0480h
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx
&&&&&&&&&&&&&&&&&& add
&&&&&&&&& dx,0ah&&&&&&
&&&&&&&&&&&&&&&&&& in&&&&&&&&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&& test
&&&&&&&&& ax,20h
&&&&&&&&&&&&&&&&&& jnz& &&&&&&&&& recv2
&&&&&&&&&&&&&&&&&& pop
&&&&&&&&&&&&&&&&&& ax
&&&&&&&&&&&&&&&&&& jmp& &&&&&&& send
recv2:&&&&&&& pop
&&&&&&&&&&&&&&&&&& ax
&&&&&&&&&&&&&&&&&& mov
&&&&&&&& dx,bx&&&&&&
&&&&&&&&&&&&&&&&&& out
&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&& ret
recv:&&&&&&&&& mov&&&&&&&&&& bx,0480h
&&&&&&&&&&&&&&&&&& mov&&&&&&&&&& dx,bx
&&&&&&&&&&&&&&&&&& add&&&&&&&&&&& dx,0ah&&&&&
&&&&&&&&&&&&&&&&&& in&& &&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&& test
&&&&&&&&& ax,01h
&&&&&&&&&&&&&&&&&& jnz
&&&&&&&&&&& recv1
&&&&&&&&&&&&&&&&&& jmp&&&&&&&&&&& recv
recv1:&&&&&&& mov&&&&&&&&&& dx,bx&&&&&
&&&&&&&&&&&&&&&&&& in
&&&&&&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&& ret
code &&&&&&& ends&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;end
of code segment
end&&&&&&&&&&& start&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;end
实验八&& 8279显示器接口实验
一、实验目的
&&& 1、进一步掌握8279的工作原理。
&&& 2、学习LED显示器的使用方法。&&&
&&& 3、熟悉8279的接口方法。
二、实验设备
&&& MUT—Ⅲ型实验箱、8086CPU模块。
三、实验内容
&&& 在六位LED数码管上循环显示1,2,3,4, 5-----E,F。
四、实验原理介绍
&&& 显示器的段选码由OUTA口和OUTB口输出,经74LS244驱动后送给共阴极LED。显示器的位扫描信号经74LS138译码、75451驱动后提供给LED的公共极。RL0~RL7提供了键盘列扫描接口,KA0~KA3提供键盘的行扫描接口。原理图见8279键盘、显示电路。
五、实验步骤
1、实验连线& 本实验无需额外接线。
2、编写调试程序,全速运行,观察实验结果
六、实验提示
1、LED是共阴极的,其七段LED的段选码为:
2、LED显示的方法为动态显示。
七、实验程序框图(实验程序名:T8279d.asm)
八、程序源代码清单
con8279&&& equ &&&&&&&&& 0492h
dat8279 && equ &&&&&&&&& 0490h
assume && cs:code
code &&&&&&& segment
org &&&&&&&&&&&& 100h
start: &&&&&&& jmp&&&&&&&&&&& start1
segcod&&&&& db&&&&&&&&&&&&& 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h
start1: &&&&& mov&&&&&&&&&& dx,con8279
mov&&&&&&&&&& al,10h
out&&&&&&&&&&&& dx,al
&&&&&&&&&&&&&&&&&&&&&&&&&& ;
mov&&&&&&&&&& al,2ah
&&&&&&&&&&&&&&&&&&&&&&&& ;10100KHz
out&&&&&&&&&&&& dx,al
call&&&&&&&&&&&& black
rkey:&&&&&&&&& mov&&&&&&&&&& dx,con8279
disla2:&&&&&& in&&&&&&&&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&&&&&&&&&& ;
and&&&&&&&&&&& ax,07h
jz&&&&&&&&&&&&&&& disla2
&&&&&&&&&&&&&&&&&&&&&&&& ;
mov&&&&&&&&&& dx,dat8279
in&&&&&&&&&&&&&& ax,dx
&&&&&&&&&&&&&&&&&&&&&&&&&& ;
and&&&&&&&&&&& ax,0ffh
mov&&&&&&&&&& bx,ax
nop&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ;
call &&&&&&&&&& black
&&&&&&&&&&&&&&&&&&&&&&&&& ;RAM
disp:&&&&&&&&& mov&&&&&&&&&& di,offset
mov&&&&&&&&&& ax,08h
&&&&&&&&&&&&&&&&&&&&&&& ;16
mov&&&&&&&&&& dx,con8279
out&&&&&&&&&&&& dx,ax
mov&&&&&&&&&& ax,90h
mov&&&&&&&&&& dx,con8279
out&&&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&&&&&&&&&& ;RAM
mov &&&&&&&& dx,dat8279
push &&&&&&& bx
and &&&&&&&&& bx,0f0h
mov &&&&&&&& cl,4
shr &&&&&&&&&& bx,cl
add &&&&&&&&& di,bx
mov &&&&&&&& al,cs:[di]
mov &&&&&&&& ah,0
out &&&&&&&&&& dx,ax
mov &&&&&&&& di,offset
pop &&&&&&&&&&&&&&&&&& bx
and &&&&&&&&& bx,0fh
add &&&&&&&&& di,bx
mov &&&&&&&& al,cs:[di]
mov &&&&&&&& ah,0
out &&&&&&&&&& dx,ax
push &&&&&&& cx
jmp &&&&&&&&& rkey
black:&&&&&&& mov&&&&&&&&&& dx,con8279
mov &&&&&&&& ax,0d1h
out&&&&&&&&&&&& dx,ax
&&&&&&&&&&&&&&&&&&&&&&&&&& ;RAM
mov&&&&&&&&&& cx,80h
&&&&&&&&&&&&&&&&&&&&&&& ;
clsb:&&&&&&&&& nop
loop&&&&&&&&&& clsb
code&&&&&&&&& ends
end&&&&&&&&&&& start
实验九&& 8279键盘扩展实验
一、实验目的
&&& 1、掌握8279的工作原理。
&&& 2、熟悉8279与键盘接口的方法。
3、学习了解键盘扩展方法。
二、实验设备
&&& MUT—Ⅲ型实验箱、8086CPU模块。
三、实验内容
&&& 将每次按键产生的键码显示在LED数码管。
四、实验原理介绍
&&& 实验原理图见8279键盘显示电路。
五、实验步骤
&&& 1、实验接线:将8279的RL0~RL7分别与键盘的RL10~RL17相连。
&&& 2、将8279的KA0~KA3分别与键盘的KA10~KA12相连。
&&& 3、用查询法编程
&&& 4、全速运行程序,按动按键,观察显示键值的变化。
六、实验提示
&&& 1、8279的I/O地址已连好,为490的偶地址,即:数据口为490H,状态口为492H。
&&& 2、8279外部输入时钟已连好,时钟频率为1MHZ。&&&
&&& 3、8279的键盘格式为:&&&
&&& 实验设定扫描信号连接键盘的列线,恢复信号连接键盘的行线,所以,D5 D4 D3表示按下键所在的列号,D2 D1 D0表示按下的键所在的行号。采用8279可以识别最大达8x8的矩阵键盘。
七、实验结果
第一行键值从左至右依次为:C0—C5;
第二行键值从左至右依次为:C6—CB;
第三行键值从左至右依次为:CC—D1;
第四行键值从左至右依次为:D2—D7;
八、实验程序框图(实验程序名:T8279.asm)
五、实验步骤
ALTERAPCJTAGUSER
2MAXPLUSⅡ上编辑译码文件,经编译、仿真无误后下载到CPLD中。
六、实验提示
随机提供的译码文件译出的地址为:
LCS0:0DOOOH~0D07FH&&&&&&&&&
LCS1:0DO80H~0D0FFH
LCS2:0D3OOH~0D3FFH&&&&&&&&&
LCS3:0D40OH~0D5FFH
LCS4:0D2OOH~0D27FH&&&&&&&&&
LCS5:0D28OH~0D2FFH
LCS6:0D1OOH~0D17FH&&&&&&&&&
LCS7:0D18OH~0D1FFH
用户若要修改此译码,须注意:
若A15~A12为“0000”,则A6A5=“00”所对应的地址空间不可用(即倒数第二位16进制数不能为0、1、8、9)。
七、实验结果
见74LS273、74LS244I/O读写实验,CS0、CS1换成LCS0、LCS1,执行程序为cpld244273.asm。
八、CPLD译码文件(user_el_iii.vhd)
library IEEE;
use IEEE.std_logic_1164.
use IEEE.std_logic_unsigned.
entity user_el_iii is
&&&&& port (Address&&&& : IN&&& STD_LOGIC_VECTOR(15 DOWNTO
&&&&&&&&&& RD,WR,MIO,AEN& : IN&&& STD_LOGIC;
IOWR,IORD,MEMW,MEMR : IN&&& STD_LOGIC;
LCS : OUT&& STD_LOGIC_VECTOR(7 DOWNTO 0)
end user_el_
ARCHITECTURE archde1 OF user_el_iii IS
LCS&=&&&&&& WHEN
(Address&&1111&) AND
(Address&&0000&) ELSE&& &&&&&& WHEN
(Address&&1111&)&&& AND& &(Address&&0000&)&&& ELSE
&&&&&& WHEN
(Address&&1111&)& AND&&
(Address&&0000&)&&& ELSE
&&&&&& WHEN
(Address&&1111&)& AND&&
(Address&&0000&)&&& ELSE
&&&&&& WHEN
(Address&&1111&)& AND&&&
(Address&&0000&)&& ELSE
&&&&& WHEN
(Address&&1111&)& AND&&
(Address&&0000&)&&& ELSE
&&&&& WHEN
(Address&&1111&)&& AND&&
(Address&&0000&)&&& ELSE
(Address&&1111&)&& AND&&
(Address&&0000&)&&& ELSE&&& & &&&&;&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&
&END archde1;}

我要回帖

更多关于 8086中断优先级排序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信