资源描述:
《微型计算机原理及其接口技术第九、十章部分习题答案 林》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、9-3解:在上图中,8253A的数据线D7~D0与8086CPU的高8位数据线D15~D8相连;8259的数据线D7~D0与8086CPU的低8位数据线D7~D0相连,8253A的端口地址码A1A0与8086CPU的A2A1相连,A0和¯BHE作为译码输入。根据图示连接可分析8253A的4个端口地址分别为FFF9H、FFFBH、FFFDH、FFFFH;8259A的两个端口地址分别为FFFCH和FFFEH。根据系统的要求,通道0定义为工作方式2,输出频率为1kHz的方波,周期为1ms。从CLK0输入5MHz的时钟脉冲,其周期为0.2us,因此,通道1的计数初值
2、应为5000(1ms/0.2us=5000);通道1定义为工作方式4,完成定时功能,每秒钟利用OUT1向CPU发出一次中断请求,输入时钟频率为1kHz,计数初值为1000H..MODELSMALL.STACK100.DATAAdd8253C0DBFFF9HAdd8253C1DBFFFBHAdd8253C2DBFFFDHAdd8253CRDBFFFFHAdd8253EDDBFFFCHAdd8253ODDBFFFEH.CODECLOCKPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,@DATAMOVDS,AXMOVDX,Add8253CR;定义通
3、道0工作在方式3MOVAL,36HOUTDX,ALMOVDX,Add8253C0;给通道0送计数初值,先送低8位,后送高8位MOVAX,5000OUTDX,ALMOVAL,AHOUTDX,ALMOVDX,Add8253CR;定义通道1工作在方式4,二进制计数MOVAL,78HOUTDX,ALMOVDX,Add8253C1;给通道1送计数初值,先送低8位,后送高8位MOVAX,1000HOUTDX,ALMOVAL,AHOUTDX,ALMOVDX,Add8253ED;对8259A初始化,ICW1设置MOVAL,13HOUTDX,ALMOVDX,Add8253OD
4、;对8259A初始化,ICW2设置MOVAL,50HOUTDX,ALMOVAL,03;对8259A初始化,ICW4设置OUTDX,ALMOVAL,0FAH;对8259A初始化,OCW1设置OUTDX,ALSTIWaitInt:HLT;CPU等中断JMPWaitInt:........CLOCKENDPEND9-5解:定时器1定义为工作方式2,完成分频功能(假设是二分频),输出频率为40Hz的连续脉冲,则输入脉冲应为80Hz,定时器1CLK1的输入脉冲来自于定时器0的OUT0输出,因此定时器0应输出频率为80Hz的方波,从CLK0输入4.77MHz的时钟脉冲,
5、因此,定时器0的计数初值应为600(4.77MHz/80Hz=600);定时器1的计数初值为2(80Hz/40Hz=2).初始化程序为:.MODELSMALL.STACK100.DATAAdd8253C0DB200HAdd8253C1DB201HAdd8253CRDB203H.CODECLOCKPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,@DATAMOVDS,AXMOVDX,Add8253CR;定义定时器0工作在方式3MOVAL,16H;00010110OUTDX,ALMOVDX,Add8253C0;给通道0送计数初值,只送低8位MOVA
6、L,2OUTDX,ALMOVDX,Add8253CR;定义定时器1工作在方式2MOVAL,74;01110100OUTDX,ALMOVDX,Add8253C1;给通道1送计数初值,先送低8位,再送高8位MOVAX,60000OUTDX,ALMOVAL,AHOUTDX,AL9-7解:将8253A通道0设置为方式1,计数初值为3000的初始化程序为:MOVAL,33H;;设置控制字OUT43H,AL;写入控制寄存器MOVAL,00;初值低8位送通道0OUT40H,ALMOVAL,30H;初值高8位送通道0OUT40H,AL将8253A通道1设置为方式2,计数初值
7、为2010H的初始化程序为:MOVAL,74H;设置控制字OUT43H,AL;写入控制寄存器MOVAX,10H;初值低8位送通道1OUT41H,ALMOVAL,20H;初值高8位送通道1OUT41H,AL将8253A通道2设置为方式4,计数初值为4032H的初始化程序为:MOVAL,B8H;设置控制字OUT43H,AL;写入控制寄存器MOVAL,32H;初值低8位送通道2OUT42H,ALMOVAL,40H;初值高8位送通道2OUT42H,AL9-8解:通道2定义为工作方式2,计时器周期性地每隔10ms产生一个中断,周期为10ms。从CLK2输入2MHz的时
8、钟脉冲,其周期为0.5us,因此,通道1的计数初值应