AA初始化程序.docx

上传人:wj 文档编号:1214336 上传时间:2023-04-30 格式:DOCX 页数:12 大小:352.71KB
下载 相关 举报
AA初始化程序.docx_第1页
第1页 / 共12页
AA初始化程序.docx_第2页
第2页 / 共12页
AA初始化程序.docx_第3页
第3页 / 共12页
AA初始化程序.docx_第4页
第4页 / 共12页
AA初始化程序.docx_第5页
第5页 / 共12页
AA初始化程序.docx_第6页
第6页 / 共12页
AA初始化程序.docx_第7页
第7页 / 共12页
AA初始化程序.docx_第8页
第8页 / 共12页
AA初始化程序.docx_第9页
第9页 / 共12页
AA初始化程序.docx_第10页
第10页 / 共12页
AA初始化程序.docx_第11页
第11页 / 共12页
AA初始化程序.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

AA初始化程序.docx

《AA初始化程序.docx》由会员分享,可在线阅读,更多相关《AA初始化程序.docx(12页珍藏版)》请在冰点文库上搜索。

AA初始化程序.docx

8253的初始化程序

1.确定端口地址:

0310H、0312H、0314H、0316H

2.确定工作方式(假设工作方式为):

通道0,方式3

通道1,方式1

通道2,方式5

3.确定计数值:

通道0:

N0=1MHz/2KHz=500

通道1:

N1=480us/(1/1mhz)=480

通道2:

N2=26

4确定控制字:

通道0:

00110111B

通道1:

01110011B

通道2:

10011011B

对3个通道的初始化程序如下:

;通道0初始化程序

MOVDX,316H

MOVAL,00110111B

OUTDX,AL

MOVDX,310H

MOVAL,00H

OUTDX,AL

MOVAL,05H

OUTDX,AL

;通道1的初始化程序

MOVDX,316H

MOVAL,001110011B

OUTDX,AL

MOVDX,312H

MOVAL,80H

OUTDX,AL

MOVAL,04H

OUTDX,AL

;通道2初始化程序

MOVDX,316H

MOVAL,10011011B

OUTDX,AL

MOVDX,314H

MOVAL,26H

OUTDX,AL

;MOVAL,00H

;OUTDX,AL

8255A初始化程序

对8255A进行初始化,要求端口A工作于方式1,输入;端口B工作于方式0,输出;端口C的高4位配合端口A工作,低4位为输入。

1.确定控制字端口地址:

006CH。

2.确定工作方式:

端口A,工作方式1,输入

端口B,工作方式0,输出

端口C,C0为输入,C4为配合工作

3.确定方式选择控制字:

10111001H(B9H)

对3个端口的初始化程序如下

MOVAL,B9H

MOVDX,006CH

OUTDX,AL

另一个8255A初始化程序

已知某8255A在系统中占用88~8BH号端口地址,现欲安排其PA,PB,PC口全部为输出,PA,PB口均工作于方式0模式,并将PC6置位,使PC3复位,试编写出相应的初始化程序:

1.确定端口地址

控制字以及PC口置位复位端口,8BH

2.确定工作方式

3.确定方式选择控制字

MOVAL,80H

OUT8BH,AL

MOVAL,ODH

OUT8BH,AL

MOVAL,06H

OUT8BH,AL

在8259A内部有两组寄存器:

一组为命令寄存器,用于存放CPU写入的初始化命令字ICW1~ICW4(initializationcommandwords);

另一组为操作命令寄存器,用于存放CPU写入的操作命令字OCW1~OCW3(operationcommandwords)。

1.初始化命令字ICW的格式

  当地址线A0为1时,8259A提供了4个(ICW1~ICW4)初始化命令字,并规定了严格的初始化步骤。

  8259A是中断系统的核心器件,对它的初始化编程要涉及中断系统的软、硬件的许多问题,而且一旦完成初始化,所有硬件中断源和中断处理程序都必须受其制约。

(1)ICW1的格式

  ICW1的格式如图6.12所示。

 

            

                图6.12 ICW1的格式

  IC4(ICW4needed/noICW4needed):

指示在初始化时是否需要写入命令字ICW4。

在80x86CPU系统中需要定义ICW4,设IC4=1。

  SNGL(single/cascademode):

指示8259A在系统中使用单片还是多片级联。

SNGL=1为单片,SNGL=0为多片级联。

  ADI(calladdressinterval):

设置调用时间间隔,在80486CPU中无效。

  LTIM(level/edgetriggeredmode):

定义IRi的中断请求触发方式。

LTIM=1为电平触发,LTIM=0为边沿触发。

  D4:

ICW1的标志位,恒为1。

  D5~D7:

未用,通常设置为0。

(2)ICW2的格式

ICW2用于设置中断类型号,格式如图6.13所示。

           

              

图6.13 ICW2的格式

  ICW2中的低3位ID2~ID0由中断请求输入端IRi(i=0~7)的编码自动引入,高5位T7~T3由用户编程写入。

若ICW2写入40H时,则IR0~IR7对应的中断类型号为40H~47H。

(3)ICW3的格式

  ICW3是级联命令字,在级联方式下才需要写入。

主片和从片所对应的ICW3的格式不同,主片ICW3的格式如图6.14所示,从片ICW3的格式如图6.15所示。

          

图6.14 主片ICW3的格式

图6.15 从片ICW3的格式 

 S7~S0与IR7~IR0相对应,若主片IRi(i=0~7)引脚上连接从片,则Si=1,否则Si=0。

  ID2~ID0是从片接到主片IRi上的标识码。

例如,当从片的中断请求信号INT与主片的IR2连接时,ID2~ID0应设置为010,D7~D3未用,通常设置为0。

  在中断响应时,主片通过级联信号线CAS2~CAS0送出被允许中断的从片的标识码,各从片用自己的ICW3和CAS2~CAS0进行比较,二者一致的从片被确定为当前中断源,可以发送该从片的中断类型码。

(4)ICW4的格式

  ICW4用于设定8259A的工作方式,其格式如图6.16所示.

               

图6.16 ICW4的格式

  mP(microprocessor):

设置CPU模式。

mP=1为80x86模式,mP=0为8080/8085模式。

  AEOI(autoendofinterrupt):

设置8259A的中断结束方式。

AEOI=1为自动结束方式,AEOI=0为非自动结束方式。

  (master/slave):

选择缓冲级联方式下的主片与从片。

=1为主片,=0为从片。

  BUF(buffer):

设置缓冲方式。

BUF=1为缓冲方式,BUF=0为非缓冲方式。

  SFNM(specialfullynestedmode):

设置特殊完全嵌套方式。

SFNM=1为特殊完全嵌套方式,SFNM=0为非特殊完全嵌套方式

  D7~D5:

未定义,通常设置为0。

  需要注意:

当多片8259A级联时,若在8259A的数据线与系统总线之间加入总线驱动器,引脚作为总线驱动器的控制信号,D3位BUF应设置为1,此时主片和从片的区分不能依靠引脚,而是由来选择,当=0时为从片;当=1时为主片。

如果BUF=0,则定义无意义。

2.操作命令字OCW的格式

  操作命令字有OCW1,OCW2和OCW3。

 

(1)OCW1的格式

  OWC1为中断屏蔽字,写入中断屏蔽寄存器(IMR)中,对外部中断请求信号IRi实行屏蔽,

  格式如图6.17所示。

           

            图6.17 OCW1的格式

  当某位Mi(interruptmask)为1时,则对应的IRi请求被禁止;当Mi为0时,则对应的IRi请求被允许。

在工作期间可根据需要随时写入或读出。

 

(2)OCW2的格式 

  OWC2用于设置中断优先级方式和中断结束方式,其格式如图6.18所示。

                 

 图6.18 OCW2的格式

  L2~L0(IRleveltobeactedupon):

8个中断请求输入端IR7~IR0的标志位,用来指定中断级别。

L2~L0指定的中断级别是否有效,由SL(specificlevel)位控制。

当SL=1时,L2~L0定义有效;当SL=0时,L2~L0定义无效。

  EOI(endofinterrupt):

中断结束命令。

若EOI=1时,在中断服务子程序结束时向8259A回送中断结束命令EOI,以便使中断服务寄存器(ISR)中当前最高优先权位复位(普通EOI方式),或由L2~L0表示的优先权位复位(特殊EOI方式)。

  R(rotation):

设置优先权循环方式位。

R=1为优先权自动循环方式;R=0为优先权固定方式。

D4,D3为OCW2标志位。

 (3)OCW3的格式

  OCW3用于设置或清除特殊屏蔽方式和读取寄存器的状态,格式如图6.19所示。

  RR(readregistercommand):

读ISR和IRR命令位,RIS(readinterruptregisterselect)读寄存器选择位。

当RR=1,RIS=0时,读取IRR命令;当RR=1,RIS=1时,读取ISR命令。

在进行读ISR或IRR操作时,先写入读命令OCW3,然后紧接着执行读ISR或IRR的指令。

               

 图6.19 OCW3的格式

  例如,设8259A的两个端口地址为20H和21H,OCW3,ISR和IRR共用一个地址20H。

 

读取ISR内容的程序段为

MOV    AL,00001011B

OUT    20H,AL   ;读ISR命令写入OCW3

IN    AL,20H     ;读ISR内容至AL中读取IRR内容的程序段为

MOV    AL,00001010B

OUT    20H,AL      ;读IRR命令写入OCW3

IN    AL,20H      ;读IRR内容至AL中

   P(pollcommand):

为中断状态查询位。

当P=1时,可通过读入状态寄存器的内容,查询是否有中断请求正在被处理,如有则给出当前处理中断的最高优先级。

中断状态寄存器如图6.20所示。

 

              

图6.20 中断状态寄存器

  在读取中断状态字时,先写入中断查询命令,然后读取中断状态字,程序如下:

  MOV    AL,00001111B

  OUT    20H,AL    ;读中断状态字命令写入OCW3

  IN    AL,20H    ;读中断状态字

  ESMM(enablespecialmaskmode)与SMM(specialmaskmode)组合可用来设置或取消特殊屏蔽方式。

当ESMM=1,SMM=1时,设置特殊屏蔽;当ESMM=1,SMM=0时,取消特殊屏蔽。

3.8259A的初始化编程

  8259A的初始化编程需要写入初始化命令字ICW1~ICW4,对它的连接方式、中断触发方式和中断结束方式进行设置。

但由于ICW1~ICW4使用两个端口地址,即ICW1用A0=0的端口,ICW2~ICW4使用A0=1的端口,因此初始化程序应严格按照系统规定的顺序写入,即先写入ICW1,接着写ICW2,ICW3,ICW4。

  8259A的初始化流程如图6.21所示。

  操作命令字OCW1~OCW3的写入比较灵活,没有固定的格式,可以在主程序中写入,也可以在中断服务子程序中写入,视需要而定。

下面通过例子来说明如何编写8259A的初始化程序。

               

图6.21 8259A初始化流程图

  【例6.1】 某微机系统使用主、从两片8259A管理中断,从片中断请求INT与主片的IR2连接。

设主片工作于特殊完全嵌套、非缓冲和非自动结束方式,中断类型号为40H,端口地址为20H和21H。

从片工作于完全嵌套、非缓冲和非自动结束方式,中断类型号为70H,端口地址为80H和81H。

试编写主片和从片的初始化程序。

  根据题意,写出ICW1,ICW2,ICW3和ICW4的格式,按图6.21的顺序写入。

编写初始化程序如下:

主片8259A的初始化程序如下:

  MOV   AL,00010001B        ;级联,边沿触发,需要写ICW4

  OUT   20H,AL           ;写ICW1

  MOV   AL,01000000B        ;中断类型号40H

  OUT   21H,AL           ;写ICW2

  MOV   AL,00000100B        ;主片的IR2引脚接从片

  OUT   21H,AL           ;写ICW3

  MOV   AL,00010001B        ;特殊完全嵌套、非缓冲、自动结束

  OUT   21H,AL           ;写ICW4

从片8259A初始化程序如下:

  MOV   AL,00010001B        ;级联,边沿触发,需要写ICW4

  OUT   80H,AL           ;写ICW1

  MOV   AL,01110000B        ;中断类型号70H

  OUT   81H,AL           ;写ICW2

  MOV   AL,00000010B        ;接主片的IR2引脚

  OUT   81H,AL           ;写ICW3

  MOV   AL,00000001B       ;完全嵌套、非缓冲、非自动结束

  OUT   81H,AL          ;写ICW4

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

当前位置:首页 > PPT模板 > 商务科技

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

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