可编程定时器计数器_第1页
可编程定时器计数器_第2页
可编程定时器计数器_第3页
可编程定时器计数器_第4页
可编程定时器计数器_第5页
已阅读5页,还剩43页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

可编程定时器-计数器可编程定时器-计数器可编程定时器-计数器8.1接口原理接口电路中的电路单元输入/输出数据锁存器和缓冲器:用以解决CPU与外设之间速度不匹配的矛盾,以及起隔离和缓冲的作用;控制命令和状态寄存器:以存放CPU对外设的控制命令,以及外设的状态信息;可编程定时器-计数器可编程定时器-计数器可编程定时器-计数器18.1接口原理接口电路中的电路单元输入/输出数据锁存器和缓冲器:用以解决CPU与外设之间速度不匹配的矛盾,以及起隔离和缓冲的作用;控制命令和状态寄存器:以存放CPU对外设的控制命令,以及外设的状态信息;8.1接口原理接口电路中的电路单元接口原理地址译码器用来选择接口电路中的不同端口(寄存器)读写控制逻辑中断控制逻辑接口原理地址译码器接口原理片选概念 必须要有一个地址信号选中接口芯片后,才能使该接口芯片进入电路工作状态。 选通端CE(ChipEnable),又称片选端CS(ChipSelect)。CE端是控制接口芯片进入电路工作状态的引脚端。接口原理片选概念接口原理读/写概念 用IN,OUT指令读/写可编程接口的概念接口芯片大部分是多通道、多功能的。 多通道是指一个接口芯片一面与CPU连接,另一面可接几个外设;多功能是指一个接口芯片能实现多种接口功能,实现不同的电路工作状态。接口原理读/写概念接口原理可编程序接口芯片各硬件单元不是固定连接的可由用户在使用中选择即通过计算机的指令来选择不同的通道和不同的电路功能称为“编程控制”接口电路工作状态可由计算机指令来控制的接口芯片称为“可编程序接口芯片”控制寄存器用来存放控制电路组态的控制字节的寄存器接口原理可编程序接口芯片接口原理“联络”的概念 接口芯片常常需要和外设间有一定的“联络”信号,以保证信息的正常传送。 通常采用两个“联络”(Handhake)信号: (选通信号,strobe)和RDY(就绪信号,Ready)接口原理“联络”的概念8.1定时器/计数器的概念定时器 时钟计时、DRAM刷新、音频生成软件定时

CPU执行指令循环计数以达到定时的效果。 灵活方便,节省费用。CPU利用率低。硬件定时 硬件计数器产生定时信号8.1定时器/计数器的概念定时器可编程定时器/计数器的概念软件控制的硬件定时器定时方式计数制输出波形触发方式循环方式计数间隔控制寄存器可编程定时器/计数器的概念软件控制的硬件定时器可编程定时器/计数器的工作原理可编程定时器/计数器的工作原理可编程定时器/计数器的工作原理16位计数初值寄存器CR存放计数初值可通过程序来设定计数执行单元CE一个16位减法计数器初值是计数初值寄存器的内容对CLK脉冲计数启动后每出现一个CLK脉冲计数值减1当减为零时通过OUT输出指示信号可编程定时器/计数器的工作原理16位计数初值寄存器CR可编程定时器/计数器的工作原理CLK信号周期性时钟信号,定时器功能;非周期性事件计数信号,计数器功能。计数输出锁存器OL通常跟随计数执行单元的内容而变化当接收到CPU锁存命令时就锁存当前的计数值GATE信号控制输入端有多种控制作用(允许/禁止计数、启动/停止计数)可编程定时器/计数器的工作原理CLK信号8.38253的结构和功能数据总线缓冲器读/写控制逻辑控制字寄存器CLK0GATE0OUT0通道0CLK2GATE2OUT2通道2CLK1GATE1OUT1通道1CSD0-D7内部总线RDWRA0A18.38253的结构和功能数据读/写控制字CLK0通道0C8253的结构和功能三个独立的16位计数器可用程序设置成多种工作方式按十进制或二进制计数最高计数速率2MHz

8253的结构和功能三个独立的16位计数器8253的结构和功能数据总线缓冲器D7~D08位三态双向读/写控制逻辑CS:片选信号低电平有效RD:读信号低电平有效WR:写信号低电平有效A1A0:端口选择信号123456789101112242322212019181716151413VccWRRDCSA1A0CLK2OUT2GATE2CLK1OUT1GATE1D7D6D5D4D3D2D1D0CLK0OUT0GATE0GND82538253的结构和功能数据总线缓冲器D7~D0124Vcc8253的结构和功能三个计数器/定时器通道8位控制字寄存器16位计数初值寄存器减一计数器为0时从OUT端上输出一个脉冲输出锁存器定时时间时钟脉冲周期X预置的计数初值CLK 计数脉冲或标准脉冲输入端OUT 计数值为0时输出一个脉冲GATE 允许端,当GATE=1时允许计数8253的结构和功能三个计数器/定时器通道8253的结构和功能每个通道三个寄存器8位控制寄存器16位计数初值寄存器分两次写入16位减法计数寄存器控制字寄存器只写寄存器接受写入的控制字8253的结构和功能每个通道三个寄存器8253的控制寄存器工作方式控制字SC1,SC0—计数器选择D7D6D5D4D3D2D1D0SC1SC0RL1RL0M2M1M0BCDSC1SC0计数器00CNT001CNT110CNT211不用8253的控制寄存器工作方式控制字D7D6D5D4D3D2D8253的控制寄存器RL1,RL0—CPU读/写操作RL1RL0操作方式00计数器锁存操作(供CPU读)01只读/写计数器低8位10只读/写计数器高8位11先读/写底8位,再读/写高8位8253的控制寄存器RL1,RL0—CPU读/写操作RL1R8253的控制寄存器M2M1M0—工作方式选择BCD—计数方式选择M2M1M0工作方式000方式0001方式1X10方式2X11方式3100方式4101方式5016位二进制计数14位十进制(BCD)码计数8253的控制寄存器M2M1M0—工作方式选择M2M1M0工8253的控制寄存器GATE信号的功能低电平或进入低电平上升边沿高电平方式0禁止计数——允许计数方式1——1.初始化和计数2.下一个时钟后输出变为低电平——方式21.禁止计数2.使输出立即变为高电平1.初始化和计数2.计数器重新装入允许计数方式31.禁止计数2.使输出立即变为高电平1.初始化和计数2.计数器重新装入允许计数方式4禁止计数——允许计数方式5——初始化和计数——8253的控制寄存器GATE信号的功能低电平或进入低电平上升8253的工作方式先向8253写入控制字控制字起复位作用使OUT端变为工作方式中规定的状态和对计数初值寄存器CR清零然后再写入计数初值到CR中其最大值为0000H8253的工作方式先向8253写入控制字8253的工作方式方式0—计数结束中断方式典型的事件计数用法CLK端作为事件计数输入信号计数执行单元CE为零时OUT端变为高电平可作为中断请求信号8253的工作方式方式0—计数结束中断方式电平控制电平输出继续计数计数一遍工作方式0电平控制工作方式08253的工作方式方式0的特点和应用计数过程由软件启动GATE的作用是开放计数或禁止计数OUT端由低变高表示计数过程结束8253的工作方式方式0的特点和应用8253的工作方式方式1—硬件可重触发单稳态方式计数器相当于一个可编程的单稳态电路触发输入为GATE信号由GATE的上升沿触发计数器工作8253的工作方式方式1—硬件可重触发单稳态方式工作方式1上升沿控制电平输出重新计数计数一遍工作方式1上升沿控制8253的工作方式方式1的特点和应用计数器的启动只能由Gate的上升沿产生即只能用硬件启动OUT输出为一个单稳态负脉冲在形成单稳态脉冲过程中可以重触发在微机实时控制系统中常用作监视时钟WatchdogTimer8253的工作方式方式1的特点和应用8253的工作方式方式2—速率发生器(RateGenerator)能产生周期性的定时信号速率发生器N分频方式和周期性定时器方式

8253的工作方式方式2—速率发生器(RateGenera工作方式2电平控制负脉冲输出重新计数循环计数工作方式2电平控制8253的工作方式方式2的特点和应用CR内容能自动地、重复地装入到CE中OUT端上能连续地输出周期性分频信号改变计数初值即可获得不同速率的OUT输出信号负脉冲宽度均为一个CLK脉冲的周期。主要作为分频器和时基信号8253的工作方式方式2的特点和应用8253的工作方式方式3—方波方式(SquareWaveMode)除OUT输出方波之外和方式2相似方波的重复周期是计数初值个CLK脉冲周期之和8253的工作方式方式3—方波方式(SquareWave工作方式3电平控制电平翻转输出减2计数重新计数循环计数工作方式3电平控制8253的工作方式方式3的特点和应用计数过程是CE内容减2改变计数初值则OUT端将输出不同频率主要应用作为方波发生器和波特率发生器8253的工作方式方式3的特点和应用8253的工作方式方式4—软件触发选通方式SoftwareTriggeredstrobe写入方式控制字CW后OUT端输出高电平在写入计数初值后的一个CLK脉冲开始减1计数CE为零时使OUT输出变为低电平OUT低电平持续一个CLK脉冲周期后又恢复到高电平8253的工作方式方式4—软件触发选通方式工作方式4电平控制负脉冲输出重新计数计数一遍工作方式4电平控制8253的工作方式方式5—硬件触发选通方式HardwareTriggeredStrobe方式5和方式1有些相似CE到零时OUT端产生宽度为1个CLK脉冲周期的负脉冲选通输出信号8253的工作方式方式5—硬件触发选通方式工作方式5上升沿控制负脉冲输出不停计数计数一遍工作方式5上升沿控制8253的工作方式方式0:一旦写入控制字输出即为低计数结束,输出即为高该上升沿可作中断请求信号一次有效方式1:产生单个负脉冲脉宽为计数值一次有效方式2:分频器但负脉冲的宽度为一个时钟宽连续有效方式3:方波发生器占空比为0.5(偶)或略大于0.5(奇)连续有效方式4:软件置计数值负脉冲为一个时钟宽度一次有效方式5:硬件(门控信号)触发计数负脉冲为一个时钟宽度, 以后初值自动装入,但不触发8253的工作方式方式0:一旦写入控制字输出即为低8253的初始化写入方式控制字三个通道用的控制字端口地址是相同的三个控制字写入后存入通道对应的寄存器中写入计数初始值读计数值以普通对计数器端口读的方法取得当前计数值锁存计数器的当前计数值8253的初始化写入方式控制字8253的初始化例:某8086微机系统中,8253的三个计数器端口地址分别为 3F0H,3F1H,3F2H,控制字寄存器端口地址为3F3H要求通道0工作于方式3,且计数初值n=1234则初始化程序为: 通道0 先低后高 方式3 BCD计数

MOV AL,00110111B ;控制字

MOV DX,3F3H ;控制端口

OUT DX,AL ;送控制字

MOV DX,3F0H ;通道0口的地址

MOV AL,34H ;计数值低字节

OUT DX,AL ;写低字节

MOV AL,12H ;计数值高字节

OUT DX,AL ;写高字节

8253的初始化例:某8086微机系统中,8253的三个计数8253-5的应用举例用8253-5监视一个生产流水线8253-5的应用举例用8253-5监视一个生产流水线主程序为:

MOVAL,15H ;00010101 OUT43H,AL MOVAL,50H OUT40H,AL STI LOP:HLT JMPLOP主程序为:中断服务程序为:

MOVAL,01H OUT80H,AL ;8255PA接口

MOVAL,77H ;01110111 OUT43H,AL MOVAL,50H OUT41H,AL MOVAL,12H OUT41H,AL CALLDL5S MOVAL,00H OUT80H,AL IRET中断服务程序为:8253在IBM-PC机中的应用8253在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论