《精》微机原理考前复习串讲.ppt

假定8255A的PC2原为低电平,请编一初始化程序使PC2端输出一正跳变。如果要求输出一个正脉冲,则初始化程序又是什么情况?(设控制口地址为45H) ① MOV AL OUT 45H,AL ;PC2输出正跳变 ② MOV AL OUT 45H,AL MOV AL ;PC2输出正脉冲 OUT 45H,AL 思考:如果端口号大于255,应如何处理? 第十章 中断控制器、计数/定时控制器 1. 中断类型号的获取的四种方式 ①可屏蔽中断INTR——由外设(8259A)提供中断类型号;②非屏蔽中断NMI——不经过中断响应周期,自动形成中断类型号02H;③专用软件中断——自动形成中断类型码;④中断指令INT n——由指令提供中断类型号n。 2. 8253的方式选择控制字 3. 8253芯片的工作方式:8253共有3个通道,每个通道可有6种可供选择的工作方式,以完成定时、计数或脉冲发生器等多种功能。比较掌握各工作方式的特点 4. 8253芯片的应用编程 若用8253通道0,工作在方式1,按十进制(BCD码)计数,计数初值为2010H,则其初始化程序应如何编写? (1)确定通道控制字 通道0 先写低8位后写高8位 方式1 BCD计数 (2)计数初值低8位为10H,高8位为20H。则初始化程序段为:     MOV AL,33H ; OUT 4BH,AL ; MOV AL ,10H ; OUT 48H,AL ; MOV AL,20H ; OUT 48H,AL ; (设8253的端口地址为48H-4BH) 设置通道0控制字 写通道0计数初值高8位20H 写通道0计数初值低8位10H 假设8253的计时器0工作在方式5,按二进制计数,计数初值为46H;计数器1工作在方式1,按BCD码计数,计数初值为4000H;计数器2工作在工作方式2,按二进制计数,计数初值为0304H。请写出以上三种情况的初始化程序。设8253芯片的端口地址为04C0H、04C2H、04C4H、04C6H。 MOV AL ;二进制,方式5,写低字节,计数器0 MOV DX,04C6H ;设置8253控制口地址 OUT DX,AL ;写入工作方式控制字 MOV AL,46H ;计数初值 MOV DX,04C0H ;设置8253计数器0地址 OUT DX,AL ;写入计数初值 MOV AL ;BCD数,方式1,写16位数,计数器1 MOV DX,04C6H ;设置8253控制器地址 OUT DX,AL ;写入工作方式控制字 解: MOV AL,00H ;计数值低字节 MOV DX,04C2H ;设置8253计数器1地址 OUT DX,AL ;写入计数值低字节 MOV AL,40H ;计数器高字节 OUT DX,AL ;写入计数值高字节 MOV AL ;二进制,方式2,写入16位数,计数器2 MOV DX,04C6H ;控制口地址 OUT DX,AL ;写入工作方式控制字 MOV AL,04H ;计数值低字节 MOV DX,04C4H ;设置计数器2地址 OUT DX,AL ;写入计数值低字节 MOV AL,03H ;计数值高字节 OUT DX,AL ;写入计数值高字节 8253初始化顺序: (1)先将控制字写入相应计数器的控制寄存器中。(2)写入定时或计数的初值。要注意如果计数值为16位,则要CPU执行两次输出指令完成初值的设置,即先写低字节,再写高字节。 若8253芯片的接口地址为D0D0H-D0D3H,时钟信号频率为2MHz。现利用计数器0、1、2分别产生周期为10μs的对称方波及每1ms和2ms产生一个负脉冲,试编写包括初始化在内的程序。 分析: 计数器0工作于方式3,计数器1和计数器2工作于方式2。时钟频率2MHz,即周

文档评论(0)

1亿VIP精品文档

相关文档