[信息与通信]第7章 微型机接口技术上.ppt
《[信息与通信]第7章 微型机接口技术上.ppt》由会员分享,可在线阅读,更多相关《[信息与通信]第7章 微型机接口技术上.ppt(147页珍藏版)》请在三一办公上搜索。
1、第7章 微型机接口技术,掌握定时/计数器的使用技术掌握并行与串行接口技术掌握A/D与D/A转换技术,教学目的和要求,7.1 概述,接口的作用与意义,7.2 可编程时间间隔定时器芯片82C54,82C54是一种实现定时和计数功能的外围电路,拥有3个独立的16位计数器,每个计数器都可通过程序设计的方法设定为实现定时功能的各种操作方式。可编程时间间隔定时器芯片82C54有以下几个特点:与所有Intel系列微处理器兼容 可以处理从DC12MHz范围的输入频率信号 3个独立的16位的计数器 最大计数范围为065535 6种可编程的计数模式,状态读返回命令以二进制或BCD计数与TTL完全兼容 单 5V供电
2、电压低功耗的CHMOS 工作温度范围:C82C54 0C+70C I82C54-40C+85C M82C54-55C+125C,7.2.1 82C54内部结构,82C54的内部结构如图9-12所示,该芯片内部由数据总线缓冲器、控制寄存器、读写控制逻辑以及计数器等组成,82C54内部结构,一、数据总线缓冲器 该缓冲器为8位双向三态的缓冲器,可直接挂在数据总线上。通过它,一方面可以向控制寄存器写入控制字,向计数器写入计数初值;另一方面也可由CPU通过该缓冲器读取计数器的当前计数值 二、读写控制逻辑 读写逻辑的功能是接收来自CPU的控制信号,包括读信号、写信号、片选信号 和芯片内部寄存器的寻址信号A
3、1、A0,并完成对82C54各计数器的读写操作,82C54内部结构,三、控制字寄存器 接收来自CPU的控制字,并由控制字D7、D6位的编码决定该控制字写入哪一个计数器的控制寄存器中 四、计数器 82C54有3个独立的计数器通道,每个通道的结构完全相同,如图9-13所示。每一个通道有一个16位减法计数器,还有对应的16位初值寄存器和输出锁存器。计数开始前写入的计数初值存于初值寄存器;计数过程中,减法计数器的值不断递减,而初值寄存器中的初值不变。输出锁存器则用于写入锁存命令时锁定当前计数值,82C54每个计数器的内部逻辑图,7.2.2 82C54的引脚信号,82C54有24条引脚,双列直插式封装,
4、如图9-14所示 一、与CPU一侧的接口信号 D0D7,三态双向数据线。与CPU数据总线相连,用于传递CPU与82C54之间的 数据信息、控制信息和状态信息,82C54的引脚信号,片选信号,输入,低电平有效。有效时,表示82C54被选中,允许CPU 对其进行读写操作。通常连接到I/O端口地址译码电路的输出端,写信号,输入,低电平有效。用于控制CPU对82C54的写操作,可与A1、A0信号配合以决定是写入控制字还是计数初值,,读信号,输入,低电平有效。用于控制CPU对82C54的读操作,可与A1、A0信号配合读取某个计数器的当前计数值 A1、A0,地址输入线。用于寻址82C54内部的4个端口,即
5、3个计数器和一个控制字。一般与CPU低位的地址线相连,82C54的读写操作逻辑如表9-3所示,82C54的引脚信号,表9-2 82C54读/写操作逻辑,82C54的引脚信号,二、与外部设备的接口信号CLK0,1,2,时钟脉冲输入端,用于输入定时脉冲或计数脉冲信号。CLK可以是系统时钟脉冲,也可以由其他脉冲源提供 GATE0,1,2,门控输入端,用于外部控制计数器的启动计数和停止计数的操作。两个或两个以上计数器连用时,可用此信号来同步,也可用于与外部某信号的同步 OUT0,1,2,,计数输出端。在不同方式的计数过程中,OUT引脚上输出相应的信号,7.2.3 82C54的控制字,一、82C54的方
6、式控制字 82C54的方式控制字有4个主要功能:从3个计数器中选择一个 确定计数器数据的读写格式确定计数器的工作方式选择计数器的计数方式 方式控制字的格式如图9-15所示,其中,X表示没有使用位,通常设置为0,82C54的控制字格式,82C54的控制字,计数器选择(D7D6)决定这个控制字是哪一个通道的控制字。由于3个通道的工作是完全独立的,所以需要有3个控制字寄存器分别规定相应通道的工作方式。但它们的地址是同一个,即A1A011(控制字寄存器的地址)。所以,需要由这2位来决定是哪一个通道的控制字,读/写格式(D5D4)CPU向计数通道写入初值和读取它们的当前状态时,有几种不同的格式 若低8位
7、计数,则令D5D401,只写低8位,高8位自动置0;若高8位计数,则令D5D410,只写高8位,低8位自动为0;若16位计数,则令D5D411,先写入低8位,后写入高8位;令D5D400,则把当前计数器中的值锁存到输出寄存器中,以便读取,82C54的控制字,工作方式(D3D2D1)82C54的每个通道可以有6种不同的工作方式,由D3D2D1 三位决定,具体情况在9.2.4节中详细介绍数制选择(D0)82C54的每个通道都有两种计数制:二进制和二十进制(BCD码),由D0位决定。在二进制时,写入初值的范围为0000HFFFFH,其中0000H是最大值,表示65536。在二十进制时,写入初值范围为
8、00009999,其中0000表示最大值l0000。因为计数器是先减1,再判断是否为0,所以写入0实际代表最大计数值,82C54的控制字,例【9-3】选用计数器0计数,计数值为1000,分别用二进 制和二十进制(BCD)方式计数,用方式3计数,假设系统安排82C54计数器0、1、2和控制端口的地址分别为:220H、221H、222H和223H,试对计数器0编程初始化 MOV DX,223H MOV AL,00110110H;二进制方式计数 OUT DX,AL;送计数方式控制字 MOV DX,220H MOV AX,1000;十进制数1000送给AX OUT DX,AL;先送低8位 MOV AL
9、,AH OUT DX,AL;后送高8位,82C54的编程逻辑,二、82C54的编程逻辑 当初始化82C54某个计数通道时,首先把相应的方式控制字写入到控制字寄存器中,再根据控制字中数据读/写格式(D5D4)位的规定,写入计数初值到对应的计数通道。82C54工作过程中,任一通道的计数值,CPU可用输入指令读取。CPU读到的是执行输入指令瞬间计数器的当前值,但82C54的计数器是16位的,所以要分2次读至CPU,因此,若不锁存的话,在前后两次执行输入指令的过程中,计数值可能已经发生变化了,82C54的编程逻辑,锁存当前计数值有下面3种方法:利用GATE信号使计数过程暂停 向82C54写入一个方式控
10、制字,令82C54通道的输出锁存器锁存。82C54的每个通道都有一个16位输出锁存器,平时它的值随着通道计数器的值变化。当向通道写入锁存的控制字时,它把计数器的当前值锁存(计数器可继续计数),于是CPU读取的就是输出锁存器的值。当对计数器重新编程,或读取计数值后,自动解除锁存状态,它的值又随减法计数器变化 写读回命令锁存,82C54的编程逻辑,82C54的编程逻辑,82C54的另一种工作方式,称为读回方式。这种工作方式允许程序用一条命令就可锁存全部3个计数器的当前计数值和状态信息。读回命令的格式如图9-16所示,读回命令时控制字寄存器中的D6和D7位均为1。其中,使D1位(CNT0)、D2位(
11、CNTl)和D3位(CNT2)分别对应3计数器,为1选中计数器,为0不选中计数器,D4位为0,表示将锁存状态信息,D5位为0表示将锁存计数值。这样,3个计数器的当前计数值和状态信息就可以同时锁存,以便分时读出,7.2.4 82C54的六种工作方式,82C54的每一个计数器都可以按照控制字的规定有6种不同的工作方式。下面结合时序波形图介绍各种工作方式的计数过程 一、方式0(计数结束中断方式)时序如图9-17 计数过程 当写入方式0控制字后,OUT立即变为低电平,并且在计数过程中一直维持低电平。若GATE1,写入初值后,CLK第1个下降沿到,计数值装入计数器,随后每一个CLK脉冲下降沿到,计数器减
12、1。计数器减到零时,OUT输出变为高电平,并且一直保持到该通道重新装入计数值或重新设置工作方式为止,GATE信号的影响 门控信号GATE可以用来控制计数过程,GATE为低电平时暂停计数,当GATE重新为高电平时又恢复计数新的初值对计数过程的影响 方式0是写一次计数值,只计数一遍,计数器不会自动重装初值重新开始计数。如果在计数过程中写入新的计数初值,则在写入新值后的下一个时钟下降沿计数器将按新的初值计数,即新的初值是立即有效的,方式0,方式0波形图,方式0波形图,备注:下面的约定适用于所有的工作方式波形图:计数器编程采用二进制方式,只对低字节操作(LSB);计数器的片选信号 一直处于低电平;CW
13、表示控制字(Control Word);CW=10 表示10H写入计数器;LSB表示计数器的低字节;图下的数字表示计数值:上面的数是高字节,下面的数是低字节;N表示一个不确定的计数值,二、方式1(可编程单稳态触发器),方式1的时序如图9-18所示。这种方式由外部门控信号GATE上升沿触发,产生一单拍负脉冲信号,脉冲宽度由计数初值决定计数过程 写入控制字后,OUT输出为高电平。写入计数初值之后,计数器并不立即开始计数,而要等到GATE上升沿后的下一个CLK输入脉冲的下降沿,OUT输出变低,计数才开始。结束时,OUT输出变高,从而产生一个宽度为N个CLK周期的负脉冲,二、方式1,GATE信号的影响
14、 方式1中,GATE信号的作用可从两个方面进行说明第一,在计数结束后,若再来一个GATE信号上升沿,则下一个时钟周期的下降沿又从初值开始计数,而不需要重新写入初值,即门控信号可重新触发计数第二,在计数过程中,若再来一个门控信号的上升沿,也在下一个时钟下降沿从初值起重新计数,即终止原来的计数过程,开始新的一轮计数,新的初值对计数过程的影响 如果在计数过程中写入新的初值,不会立即影响计数过程,只有下一个门控信号到来后的第一个时钟下降沿,才终止原来的计数过程,按新值开始计数。即新的初值下次有效,方式1波形图,方式1波形图,三、方式2(脉冲波发生器、分频器),方式2的工作波形如图9-19所示。这种方式
15、的功能如同一个N分频计数器,输出是输入时钟按照计数值N分频后的一个连续脉冲计数过程 写入控制字后的第一个CLK时钟上升沿,输出端OUT 变成高电平。若GATE1,写入计数初值后的第一个时钟下降沿开始减1计数,三、方式2,减到1时,输出端OUT变为低电平,减到0时,输出OUT又变成高电平,同时从初值开始新的计数过程。因此,方式2能自动重装初值,输出固定频率的脉冲,也称之为分频器GATE信号的影响 方式2中,GATE信号为低电平时终止计数,而由低电平恢复为高电平后的第一个时钟下降沿重新从初值开始计数。由此可见,GATE一直维持高电平时,计数器为一个N分频器,新的初值对计数过程的影响 如果在计数过程
16、中写入新的初值,且GATE信号一直维持高电平,则新的初值不会立即影响当前的计数过程,但在计数结束后的下一个计数周期将按新的初值计数,即新的初值下次有效,方式2波形图,方式2波形图,四、方式3(方波发生器),方式3的工作波形如图9-20所示,方式3波形图,四、方式3,计数过程 方式3的计数过程按计数初值的不同分为两种情况:(1)计数初值为偶数 写入控制字后的第一个时钟上升沿,输出端OUT变成高电平。若GATE1,写入计数初值后的第一个时钟下降沿开始减1计数。减到N/2时,输出端OUT变为低电平;减到0时,输出端OUT又变成高电平,并重新从初值开始新的计数过程。可见,输出端OUT的波形是连续的方波
17、,故称方波发生器,(2)计数初值为奇数 写入控制字后的时钟上升沿,输出端OUT变成高电平。若GATE1,写入计数初值后的第一个时钟下降沿开始减1计数,减到(N+1)/2以后,输出端OUT变为低电平;减到0时,输出端OUT又变成高电平,并重新从初值开始新的计数。这时输出的波形为连续的近似方波,四、方式3,GATE信号的影响 GATEl,允许计数,GATE0,禁止计数;如果在输出端OUT为低电平期间,GATE变低,则OUT将立即变高,并停止计数。当GATE变高以后,计数器重新装入初值并重新开始计数新的初值对计数过程的影响 如果在计数过程中写入新的初值,而GATE信号一直维持高电平,则新的初值不会立
18、即影响当前的计数过程,只有在计数结束后的下一个计数周期,才按新的初值计数。若写入新的初值后,遇到门控信号的上升沿,则终止现行计数过程,从下一个时钟下降沿开始按新的初值进行计数,五、方式4(软件触发选通方式),计数过程 写入方式控制字后,OUT输出高电平 若GATE1,写入初值后的下一个CLK脉冲开始减1计数,计数到达0值(注意:不是减到1),OUT输出为低电平,持续一个CLK脉冲周期后再恢复到高电平门控信号的影响 GATE1时,允许计数;GATE信号变低,禁止计数,输出维持当时的电平。这种方式依赖于装入计数值触发工作,因此,称为软件触发选通方式,新的初值对计数过程的影响 在计数过程中改变计数值
19、,则在写入新值后的下一个时钟下降沿计数器将按新的初值计数,即新值是立即有效的,方式4波形图,方式4波形图,六、方式5(硬件触发选通方式),计数过程 写入控制字后,输出OUT即为高电平。写入计数初值后,计数器并不立即开始计数,而是由门控脉冲的上升沿触发。计数结束(计数器减到0),输 出一个持续时间为一个CLK时钟周期的负脉冲,然后输出恢复为高电平。直到GATE信号再次触发。输出负脉冲可以用作选通脉冲,它是通过硬件电路产生的门控信号上升沿触发得到的,所以叫硬件触发选通方式,六、方式5,门控信号的影响 若在计数过程中,又有一个门控信号的上升沿,则立即终止当前的计数过程,且在下一个时钟下降沿,又从初值
20、开始计数,如果计数过程结束后,来一个门控上升沿,计数器也会在下一个时钟的下降沿,又从初值开始减1 计数,即门控信号的上升沿任何时候到来,都会立即触发一个计数过程,新的初值对计数过程的影响 如果在计数过程中写入新的初值,则新的初值不会立即影响当前的计数过程,只有到下一个门控信号上升沿到来后,才从新的初值开始减1计数。即新的计数初值在下一个门控信号上升沿触发后有效,方式5波形图,7.2.5 82C54几种工作方式的比较,一、计数值N与输入CLK 和输出OUT的关系 82C54在不同工作方式下,计数值N与输入CLK时钟脉冲和输出OUT的关系是不同的,如表9-4所示,表9-4计数值N与输入CLK 和输
21、出OUT的关系,82C54几种工作方式的比较,二、启动计数和重复计数的条件 所有工作方式都必须设置计数值才能够开始工作,但不是所有的方式一经设置计数值就马上开始计数,需要有一定的条件才能工作。有些方式一经启动,计数器就永无休止的工作下去,而有些方式只能计数一次。如果要重复计数同样需要某些条件,这些条件如表9-5所示,表 9-5 启动计数和重复计数的条件,82C54几种工作方式的比较,三、门控信号的作用82C54在不同的工作方式下,门控信号GATE的作用如 表 9-6所示,表 9-6 门控信号的作用,82C54几种工作方式的比较,四、在计数过程中改变计数值 82C54的六种工作方式都可以在计数器
22、计数过程中改变计数值。新的计数值什么时候起作用,随工作方式不同而有差异,具体区别如表9-7所示,表 9-7在计数过程中改变计数值,82C54几种工作方式的比较,五、82C54应用举例例【9-4】设一片82C54接在系统中,如图9-23所示。计数器0、1、2及控制口地址分别为320H、321H、322H以及323H,用计数器0与计数器1级联定时,在OUT1输出对称方波,使LED点亮0.5S,熄灯0.5S,周而复始,试对计数器0和计数器1初始化编程 分析:由于CLK0输入f=1MHz,所以周期t0=1s,而定时时间间隔为1S,那么计数初始值:1000ms1s=1000000,分配为10001000
23、,即计数器0与1分别送初始值1000,均选用二进制计数,并采用方式3计数,编程如下:,82C54应用举例,MOV DX,323H;控制端口地址给DXMOV AL,00110110B;计数器0控制字OUT DX,ALMOV AX,1000MOV DX,320HOUT DX,AL;先送低8位MOV AL,AHOUT DX,AL;后送高8位MOV DX,323HMOV AL,01110110B;计数器1控制字 OUT DX,ALMOV DX,321HMOV AX,1000OUT DX,AL;先送低8位MOV AL,AHOUT DX,AL;后送高8位,82C54应用举例,计数器0输出周期为1ms的方波
24、,计数器1输出周期为1000ms的方波,低电平使LED导通发亮 当每个计数器送完初始值后,要等到下一个完整的CLK时钟到来时,减法计数器才获得计数初始值,并开始作减1计数。只要82C54不掉电,它将不停顿地对外部脉冲进行计数,82C54应用举例,82C54应用举例,例【9-5】假如一片82C54的3个计数器全部级联起来,外部计数脉冲的频率为2MHz,采用二进制方式计数,最长的定时间隔是多少?解:输入f=2MHz,所以周期t=0.5s每个计数器的初值为0时,实际初值相当于65536,则第一级定时间隔为655360.5s=32.768ms3个计数器全部级联,定时间隔为 T=655366553665
25、5360.5s,7.3可编程并行接口,微型计算机与I/O设备的接口按照数据传送格式的不同,可分为并行接口和串行接口两种。实现并行通信的接口就是并行接口,以计算机的字长,通常是8位、16位或32位为传输单位,一次传送一个字长的数据适合于外部设备与微机之间进行近距离、大量和快速的信息交换例如:微机与并行接口打印机、磁盘驱动器微机系统中最基本的信息交换方法例如:系统板上各部件之间,接口电路板上各部件之间,并行通信的特点,7.3.1 可编程并行接口芯片8255A,18255A有两个8位(端口A与端口B)和两个4位(端口C高/低4位)的并行输入/输出端口2端口A有三种工作方式:方式0、方式1、方式2;端
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息与通信 信息与通信第7章 微型机接口技术上 信息 通信 微型机 接口 技术上
链接地址:https://www.31ppt.com/p-5615522.html