微机原理——第十章 可编程数字接口电路

10.1 8253定时计数器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
两个寄存器占有同样的地址
接口中的寄存器其实就是端口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
WR中第一个负脉冲:写命令字
WR中第二个负脉冲:写初值
在这里插入图片描述
自动重复计数:计数寄存器的值减到0,初值寄存器的值会自动导入到计数寄存器中
在这里插入图片描述
自动重复计数的才能输出连续的信号
在这里插入图片描述
前提是初值是偶数个
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第三位和第四位的00将计数计数器的初值读入(最高两位所指定的计数器计数计数器的目前的状态)
因最大计数初值为0,则若选择BCD方式:0-1=9999;选二进制方式0-1=FFFF
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
软件启动方式:所以GATE端全接电源
在这里插入图片描述

  • 前三行写入控制字
  • 后面写入初值
  • 0120H最低两位是0,则是控制器0的地址
  • 因为是16位字,所以先放入AX,分两次写
  • OUT指令不允许累加器操作数是AH,所以必须把AH送到AL中,再输出
    在这里插入图片描述

10.2 可编程并行接口

在这里插入图片描述
可以让PC口的低四位获取某一个外设的状态信息,PC口的高四位获取另外一个外部设备的状态信息,这样扩大了它的应用范围。
在这里插入图片描述
在这里插入图片描述

  • 这四个端口在一片芯片上则具有同样的高位地址
  • REAST:复位信号
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 蓝色部分
    • 8255初始化,A口输入,B口输出,C口低位输出
    • MOV AL,10010000B中的10010000B是方式控制字,位控制字最高位一定是1,红色位是C口高位的输出输入状态可为0也可为1(因为C端口的高四位没有用到),其他位均确定。C端口的PC0位作为输出位,所以一定要初始化,使用它的位控制字初始化
    • MOV AL,中的0也是方式控制字,(位控制字最高位一定是0,其余三位即D6、D5、D4位可以是任意状态,通常选0。因为是PC0位则接着的3位也是0。最低位因为初始化希望灯不亮而是低电平则也为0),故位控制字为0)
  • 酒红色部分(启动布防)
    • PB7输出高电平,启动布防(MOV AL,80H(不一定是80H,只要保证最高位是1即可))
  • 黑色部分
    • 循环检测8个端口的状态(全0则无异常都正常)
    • A端口的端口地址是1020H
  • 红色部分
    • 当认为有异常时,PC0位输出报警信号输出1
    • C端口输出一个数AL 1(C0位是1(保证高电平),其他C1到C7都为0)
    • 调用延迟
    • C0位再输出0
    • NOT AL(此时C0位已经是1,再按位取反将C0变为0,再输出)实现信号灯闪烁
    • 信号灯闪10次,则给CX送10
    • LOOP指令实现闪烁次数的循环
    • 自动进入下一次检测过程,跳转到A

在这里插入图片描述

10.3 应用例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 以子程序的方式将8255与8253的初始化
    在这里插入图片描述
  • PC7控制警灯,当其低电平时灯亮,要报警8253通道0需要输出连续方波,其gate端要有高电平(和PC6端连接在了一起,需要报警时,PC6端输出高电平),PC7端低电平亮警灯。
  • 在这里插入图片描述

-在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值