8086系统,8253计数器初始化的问题

lglg930 2009-10-22 12:29:28
8086系统,设8253芯片的计数器0、计数器2和控制口地址分别为04B0H、04B2H、04B6H。定义计数器0工作在方式2,CLK0为5MHZ,要求输出OUT0为1KHZ方波;
定义计数器2用OUT0作计数脉冲,计数值为1000,计数器到0时向CPU发出中断请求,CPU响应这一中断请求后继续写入计数值1000,开始重新计数,保持每一秒钟向CPU发出一次中断请求。
编写出对8253的初始化程序,并画出硬件连接图。

主要是对于中断请求这一部分的程序不太理解,希望能给出程序代码及其注释。
谢谢!
...全文
755 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
无风的空 2009-12-03
  • 打赏
  • 举报
回复
端口地址大于0ffH的,要使用DX存放端口地址的吧?
j8727 2009-10-22
  • 打赏
  • 举报
回复
TIMER EQU 04B0H
MOV AL,00110100B ;counter0,LSB,MSB,Mode2,Binary
OUT TIMER+6,AL ;Send it to control register
MOV AX,5000 ;5000 Decimal(5MHZ/1KHZ=5000)
OUT TIMER,AL ;Sent LSB
MOV AL,AH
OUT TIMER,AL ;Sent MSB

MOV AL,10110000B ;counter2,LSB,MSB,Mode0,Binary
OUT TIMER+6,AL ;Send it to control register
MOV AX,1000 ;1000 Decimal(1KHZ/1HZ=1000)
OUT TIMER+2,AL ;Sent LSB
MOV AL,AH
OUT TIMER+2,AL ;Sent MSB
电路图就将OUT0接到CLK2就可以了

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧