- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7.10改
[例6.14] 某80x86系统的中断系统由二片8259A级联而成,从片接入主片的IR2。主、从8259A的IR5上各接有一个外部中断源,其中断向量号分别为75H、85H。假设它们的中断人口地址均在同一段中,段基址为4310H.偏移地址分别为1230H、2340H;所有中断都采用边沿触发方式、全嵌套方式、正常EOI结束方式。
(1)写出主、从8259A中断向量号范围;
(2)假定主、从片端口地址分别为20H、21H和26H、27H。
(3)试编写全部初始化程序。
解:(1)已知某个IRi的中断向量号确定整个8259A中断向量号范围的方法是:高5位取IRi的中断向量号的高5位,低3位则取变化值范围000~111B。于是,由主、从8259A的IR5中断向量号分别为75H,85H可知,主8259A中断向量号范围:70H~77H;从8259A中断向量号范围:80H~87H。
(2)此题硬件连线要考虑各8059A与CPU的连接,还要考虑两片8059A间的级联连接。
8259A与CPU连接的方法是:
·端口选择线Ao一般与MPU低位地址线Ao直接相连。
·数据线D0~D7与MPU数据线D0~D7直接相连。
·片选线则与MPU余下的高位地址线经译码后产生的片选信号相连。
·、、分别与控制总线组合形成的、和中断响应信号相连。
·主片的INT与MPU的INTR直接相连。
8259A级联连接方法是:
·从片的INT与主片的IR2直接相连。
·主片的CAS2~CAS0与各从片的CAS2~CAS0直接相连。
·取决于是采用缓冲还是非缓冲方式。
本题采用非缓冲方式,主片接+5v,从片接地。
·端口地址 20H、21H ――― 0000 0000 0010 000× B
26H、27H ――― 0000 0000 0010 011× B
A3A2A1接LS138: 000 → , 011 →
A15~A6 经或门的,A4接LS138的,A5接LS138的G1。
由此画出硬件连线图,如图6.3所示。
(3)由题意,初始化程序应包括两部分内容,即主、从片的初始化和填写相关中断向量表。程序段如下:
;初始化8259A主片
MOV AL, 11H ;写ICW1,边沿触发、多片级联、写ICW4
OUT 20H. AL
JMP SHORT $+2 ;等待
MOV AL. 70H ;写ICW2,主片中断向量号为70H~77H
OUT 21H. AL
JMP SHORT $+2
MOV AL. 04H ;写ICW3.IR2接有从片
OUT 21H. AL
JMP SHORT $+2
MOV AL. ;写ICW4,特殊全嵌套、非缓冲、正常EOI
OUT 21H, AL
JMP SHORT $+2
MOV AL, 0FFH ;用OCW1屏蔽所有中断请求
OUT 21H. AL
;初始化8259A从片
MOV AL, 11H ;写ICW1,边沿触发、多片级联、写ICW4
OUT 26H. AL
JMP SHORT $+2
MOV AL, 80H ;写ICW2,从片中断向量号为80H~87H
OUT 27H, AL
JMP SHORT $+2
MOV AL, 02H ;写ICW3.对应主片IR2的编码为010
OUT 27H, AL
JMP SHORT $+2
MOV AL, 01H ;写ICW4,一般全嵌套、非缓冲、正常EOI
OUT 27H, AL
JMP SHORT $+2
MOV AL, 0FFH ;用OCW1屏蔽所有中断请求
OUT 27H, AL
; 填写75H和85H号中断向量
SUB DI, DI
MOV ES, DI ;ES指向中断向量表段基址
CLD
MOV DI, 75H*4 ; 75H号中断向量地址
MOV AX, 1230H ;中断处理程序偏移地址
STOSW
MOV AX, 4310H ;中断处理程序段基址
STOSW
MOV DI, 85H*4 ;初始化85H号中断向量
MOV AX, 2340H
STOSW
MOV AX, 4310H
STOSW
MOV AL, 00H ;用OCWl开放主片所有中断请求
OUT 21H, AL
JMP SHORT $+2
MOV AL, 00H ;用OCWl开放从
原创力文档


文档评论(0)