第八章 可编程接口芯片及应用【微机原理】2

简介: 第八章 可编程接口芯片及应用【微机原理】2

8253工作方式小结
初始化后OUT输出:

只有方式0,在写入控制字后输出为低;其余5种方式,都是在写入控制字后输出为高。

计数开始的触发方式:

方式0、2、3、4都是写入计数初值后,计数过程开始了,为软件触发。方式1和方式5在写入计数初值后,需由外部GATE信号的上升沿触发启动,为硬件触发计数。

自动重复计数:

方式2(分频器)和方式3(方波发生器)为自动重复工作方式,其他4种方式都是一次性计数,要继续工作需要重新启动。

8.1.4 8254与8253的区别

8.1.5 8253应用举例

【例8.2】8253计数器2产生频率为40KHZ的方波,设8253的端口地址为0040H~0043H,已知时钟端CLK,输入信号的频率为2MHz。试设计8253与8088总线的接口电路并编写产生方波的程序。

8253与8088总线的接口电路如图8.12所示。


为了使计数器2产生方波,应使其工作于方式3,输入的2MHz的CLK,时钟信号进行50次分频后可在OUT2端输出频率为40kHz的方波,因此,对应的控制字应为10010111B,计数初值为十进制数50。程序如下所示:

MOV AL, 10010111B;对计数器2送控制字
MOV DX, 0043H
OUT DX, AL
MOV AL, 50H ;送计数初值50
MOV DX,0042H
OUT DX, AL


8253在XT机中的应用



 1) 计数器0
该计数器向系统日历时钟提供定时中断
工作方式为方式3
计数器计数初值预置为0
OUT0输出方波的频率为1.19 MHz/65536=18.21Hz,
即每隔55ms申请一次日历时钟中断。
一分钟1092次,一小时65543次,24小时1573040(001800B0H)次。
中断服务程序对中断次数进行计数,形成实时时钟。
MOV   AL,36H  
OUT   43H,AL  
MOV   AL,0  
OUT   40H,AL  
OUT   40H,AL
2) 计数器1
向DMA控制器定时发送动态存储器刷新请求
方式2工作,初值18
频率为1.19MHz/18=662878kHz。周期为15.09µs。
OUT1输出从低电平变为高电平使触发器置1,
输出一个正电平信号给8237DREQ0,
作为内存刷新的DMA请求信号DRQ0。
MOV   AL,54H    
 OUT  43H,AL  
 MOV  AL,12H  
OUT 41H,AL 
3) 计数器2
在IBM PC/XT机的BIOS中有一个声响子程序BEEP,
它将计数器2设置为工作方式3,
作为方波发生器输出约1 KHz的方波,
经滤波驱动后推动扬声器发声。 
初值:533H,初值决定了发声的频率,
即音调,而对门控信号的控制决定了发声的长短。
MOV   AL,0B6H 
OUT  43H,AL  
MOV  AX,533H  
OUT  42H,AL 
MOV    AL,AH
OUT     42H,  AL

8.2 可编程并行接口芯片 8255A

通信?——计算机与外部信息的交换

计算机和数据通信系统中的两种基本数据传送方式——并行通信、串行通信

和串行传送相比,在同样的时钟速率下,并行传送的数据传输率较高。串行通信则是用于远距离传输要求的场合,并行通信往往适用于信息传输率要求较高,而传输距离较短的场合

8.2.1 8255A的引脚与结构

1. 8255的引脚
可编程并行接口芯片8255

8255A采用40脚双列直插封装

单一+5V电源

8位并行输入输出接口芯片

全部输入输出与TTL电平兼容

用8255A连接外部设备时,通常不需要再附加其他电路,使用方便

8255外部引脚


2. 8255内部结构

  • 端口A、B、C
  • A组控制、B组控制
  • 数据总线缓冲器
  • 读、写控制逻辑

  • 8255读写操作时的信号关系



8.2.2 8255A的工作方式与控制字

1. 8255的工作方式

  • 方式0:基本输入输出方式
    适用于无条件传送和查询方式的接口电路
  • 方式1:选通输入输出方式
    适用于查询和中断方式的接口电路
  • 方式2:双向选通传送方式
    适用于与双向传送数据的外设
    适用于查询和中断方式的接口电路

2. 8255的控制字

1)工作方式选择控制字


**8255的工作方式初始化 **

假定要求8255A的各个端口工作于如下方式:

端口A——方式0,输出;

端口B——方式0,输入;

端口C的高4位——方式0,输出;

端口C的低4位——方式0,输入。

相应的方式选择控制字应为:1 00 0 0 0 1 1

假定要求8255A的各个端口工作于如下方式:

端口A——方式0,输出;

端口B——方式0,输入;

端口C的高4位——方式0,输出;

端口C的低4位——方式0,输入。

相应的方式选择控制字应为 83H

设在系统中8255A控制口的地址为D3H,则执行如下两条指令即可实现上述工作方式的设定。
 MOV AL,83H;
 OUT 0D3H,AL; 将方式选择控制字写入控制口

2) C口按位置位/复位控制字

注意:C口控制字虽然是对端口C操作,但应写入到控制口地址,而不是写入到C数据口

例:通过C置位/复位控制字使PC7置1,PC3置0

MOV    DX,0D3H
MOV    AL,00001111B;PC7置1,引脚上出现高电平
OUT     DX,AL
MOV    AL,00000110B;PC3置0,引脚上出现低电平
OUT    DX,AL

8.2.3 各种工作方式的功能

1.8255的工作方式0——基本输入/输出方式

  • A口、B口、C口的高4位和低4位均可设置为方式0。
  • 无须联络就可以直接进行8255A与外设之间的数据输入或输出操作。
  • 也适用于查询方式传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。

    2. 8255的工作方式1—选通输入输出方式

8255A的A口和B口与外设之间进行输入或输出操作时,需要C口的部分I/O线提供联络信号。只有A口和B口可工作于方式1

  • 3. 8255的工作方式2—双向选通传送方式

同一端口的I/O线既可以输入也可以输出,只有A口可工作于方式2。此种方式下需要C口的部分I/O线提供联络信号。

8.2.4 8255A的应用举例

例:采用4个开关输入一个十六进制数,使用8255,将通过开关输入的数显示到七段数码管上。8255端口地址为60H~63H,与8088CPU连接。设计接口电路,编写程序。

解决思路:
1、作为接口芯片,8255如何与CPU连接?
如何与已知的开关七段数码管这两个外设连接?如何构成一个系统?
2、系统硬件连线完成,如何编写程序,完成系统指定的功能?


相关文章
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
1077 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
canal 关系型数据库 MySQL
cancal 同步mysql数据到es中
cancal 同步mysql数据到es中
582 1
|
7月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
615 11
|
机器学习/深度学习 自然语言处理
深度学习中的模型压缩技术:精度与效率的平衡
在深度学习领域,模型压缩技术已经成为一项关键技术。它通过减少模型的参数数量和计算量,实现了模型的轻量化和高效化。本文将介绍几种常见的模型压缩方法,包括参数剪枝、量化、知识蒸馏等,并探讨这些方法如何帮助模型在保持精度的同时提高运行效率。我们将分析每种方法的原理、实现步骤以及优缺点,并通过实验结果对比不同方法的性能表现。最后,我们将讨论模型压缩技术在未来可能的发展方向及其应用前景。
568 1
|
数据采集 存储 JSON
【专栏】网络爬虫与数据抓取的基础知识,包括爬虫的工作原理、关键技术和不同类型
【4月更文挑战第27天】本文介绍了网络爬虫与数据抓取的基础知识,包括爬虫的工作原理、关键技术和不同类型。通过实例展示了如何构建简单爬虫,强调实战中的环境搭建、目标分析及异常处理。同时,文章探讨了法律、伦理考量,如尊重版权、隐私保护和合法用途,并分享了应对反爬策略。最后,倡导遵守数据抓取道德规范,以负责任的态度使用这项技术,促进数据科学的健康发展。
1711 2
|
Cloud Native Go 开发者
使用WPS自动化转换办公文档: 将Word, PowerPoint和Excel文件转换为PDF
使用WPS自动化转换办公文档: 将Word, PowerPoint和Excel文件转换为PDF
878 0
|
运维 算法 数据挖掘
【数据挖掘】离群点检测方法详解及Sklearn中异常检测方法实战(附源码 超详细)
【数据挖掘】离群点检测方法详解及Sklearn中异常检测方法实战(附源码 超详细)
784 0
【数据挖掘】离群点检测方法详解及Sklearn中异常检测方法实战(附源码 超详细)
|
安全 应用服务中间件 API
微服务架构下的API网关设计与实现
【6月更文挑战第16天】本文将深入探讨在微服务架构中,如何设计和实现一个高效的API网关。我们将从API网关的基本概念入手,然后详细解析其设计原则和实现方法,最后通过一个实例来具体展示API网关的实现过程。
|
存储 JSON 安全
用户登录注册系统的安全性设计
用户登录注册系统的安全性设计
479 4
|
开发框架 JavaScript 小程序
uniapp、vue、小程序、js图片转base64 示例代码
uniapp、vue、小程序、js图片转base64 示例代码