- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机最新可编程接口芯片及应用 主要内容 7.1可编程定时/计数器8253 7.2串行接口芯片8251a及其应用 7.3并行接口芯片8255a及应用 7.4d/a、a/d转换接口 概述 微机与外设交换信息, 都必须通过接口电路来实现。随着大规模集成电路技术的发展,现已生产了各种各样通用的可编程接口芯片,不同系列的微处理器都有其标准化、系列化的接口芯片可供选用。因此,学会典型通用接口芯片的工作原理和使用方法,是掌握微机接口技术的重要基础。本章主要介绍Intel系列的8255a、8250、8253、8259a等几种典型通用的接口芯片。 7.1可编程定时/计数器8253 7.1.1 8253的结构 7.1.28253的工作方式与初始化 7.1.38253在PC机上的应用 7.1.1 8253的结构 一、定时技术 1)软件产生定时 利用CPU执行某一指令需要一定机器周期的原理,在软件编程时循环执行一段指令,从而产生累积的定时, 2)硬件产生定时 利用硬件计数器构成,计数脉冲触发硬件计数器计数,如果计数脉冲的周期固定,则计数同时产生定时。 3)软硬件结合 二、8253内部结构 1、数据总线缓冲器 8253与CPU之间的数据接口,它由8位双向三态缓冲存储器构成,是CPU与8253之间交换信息的必经之路。 2、读/写控制逻辑 读/写控制分别连接系统的IOR#和IOW#,接收CPU送入的读/写控制信号, 并完成对芯片内部各功能部件的控制功能, 因此, 它实际上是8253芯片内部的控制器。 3.控制字寄存器 在8253初始化编程时,由CPU写入控制字,以决定计数器的工作方式。此寄存器只能写入,不能读出。 4、计数通道0#、1#、2#: 8253有3个独立的,结构相同的计数器/定时通道,每一个通道饱含一个16位的计数寄存器,用以存放计数初始值,一个16位的减法计数器和一个16位的锁存器 三、8253外部引脚 数据总线D7~D0: 片选线 读信号 写信号 地址线A1A0 计数时钟信号CLKi 计数器门控选信号GATEi 计数器输出信号OUTi VCC及GND: (1)数据总线D7~D0:三态输入/输出线。用于将8253与系统数据总线相连,是8253与CPU接口数据线,供CPU向8253进行读写数据、传送命令和状态信息。 (2)片选线CS:为输入信号,低电平有效。当为低电平时,CPU选中8253,可以向8253进行读/写;当为高电平时,CPU未选中8253。由CPU输出的地址码经译码产生。 (3)读信号RD:输入引脚,低电平有效。由CPU发出,用于对8253进行读操作。 (4)写信号WR:输入引脚,低电平有效。由CPU发出,用于对8253进行写操作。 (5)地址线A1A0:这两根线接到系统地址总线的A1A0上,当8253被选中时,A1A0用来选择8253内部寄存器,以便对其进行读写操作。具体的控制关系如表7-2所示。 当8253被选中时,A1A0用来选择8253内部寄存器,以便对其进行读写操作。 7.1.28253的工作方式与初始化 一、8253的控制字 二.8253的初始化编程 要使用8253,必须首先进行初始化编程,初始化编程包括设置通道控制字和送通道计数初值两个方面,控制字写入8253的控制字寄存器,而初始值则写入相应通道的计数寄存器中。 初始化编程包括如下步骤: (1) 写入通道控制字,规定通道的工作方式 (2) 写入计数值,若规定只写低8位,则高8位自动置0,若规定只写高8位,则低8位自动置0。若为16位计数值则分两次写入,先写低8位,后写高8位。D0:用于确定计数数制,“0”,二进制;“1”,BCD码 【例7.1.1】 设8253的端口地址为:04H~0AH,要使计数器1工作在方式0,仅用8位二进制计数,计数值为128,进行初始化编程。 控制字为=50H 初始化程序: MOV AL,50H OUT 0AH,AL MOV AL,80H OUT 06H,AL 【例7.1.3】读取8253通道中的计数值 分析: 8253可用控制命令来读取相应通道的计数值,由于计数值是16位的,而读取的瞬时值,要分两次读取,所以在读取计数值之前,要用锁存命令,将相应通道的计数值锁存在锁存器中,然后分两次读入,先读低字节,后读高字节。 当控制字中,D5、D4=00时,控制字的作用是将相应通道的计数值锁存的命令,锁存计数值在读取完成之后,自动解锁。 如要读通道1
文档评论(0)