第7章YA及专题可编程计数器Intel8253_第1页
第7章YA及专题可编程计数器Intel8253_第2页
第7章YA及专题可编程计数器Intel8253_第3页
第7章YA及专题可编程计数器Intel8253_第4页
第7章YA及专题可编程计数器Intel8253_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、第第7 7章章 可编程计数器可编程计数器/ /定时器定时器 Intel8253Intel8253 本章重点本章重点 计数/定时器8253内部结构和引脚功能; 8253控制字;8253的6种工作方式;82538253应用:应用:芯片与系统连接、 芯片初始化编程。7.1 7.1 概述概述 实现定时/延时/计数控制主要有三种方法:(1)软件定时 使用延迟子程序,即CPU执行一段子程序实现延时。执行一段子程序实现延时。 利用利用程序循环程序循环延迟指定时间;延迟指定时间; 缺点:缺点:CPU占用率?延时精度?兼容性?占用率?延时精度?兼容性?在微机控制及应用系统中常需要一些实时时钟以提供定时、延时控制

2、、检测、中断等,或对外部事件进行计数。(3)可编程硬件定时/计数器芯片 通过软、硬件结合实现定时通过软、硬件结合实现定时/计数功能;计数功能; 在计数方式上,分在计数方式上,分加法计数器加法计数器、减法计数器减法计数器; 8253是减法计数器。是减法计数器。(2)不可编程硬件定时/计数 利用专门定时电路实现精确定时,利用专门定时电路实现精确定时,如定时器芯片555 ; 缺点:不够灵活。缺点:不够灵活。为什么要用为什么要用8253?7.1 7.1 概述概述可编程计数/定时器8253能做什么?是Intel公司生产,24引脚双列直插式芯片。主要特点:(1)三个独立、16位计数器,各计数器均以减法计数

3、;(2)各计数器可按二进制或十进制(BCD码)计数;(3)各计数器均可由程序设置六种工作方式;(4)各计数器计数速度可达2MHz;(5)所有输入输出信号与TTL电平兼容。一、计数一、计数/定时器定时器8253内部结构内部结构7.1 7.1 概述概述 8 D7-D0 计计 数数 器器 0 号号 控控 制制 字字 寄寄 存存 器器 计计 数数 器器 1 号号 计计 数数 器器 2 号号 内内部部数数据据总总线线 数数 据据 总总 线线 缓缓 冲冲 器器 读读 / / 写写 逻逻 辑辑 RD W R A0 A1 CS CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE

4、2 OUT2 编址部件编址部件0编址部件编址部件1编址部件编址部件2编址部件编址部件3工作过程工作过程:装入初值,计数执行单元对装入初值,计数执行单元对输入输入CLK减减1计数,减到计数,减到0,OUT端输出端输出信号;信号;计数过程中受计数过程中受GATE信号控制。信号控制。二、二、8253引脚及功能引脚及功能7.1 7.1 概述概述计数器0计数器1计数器2电源线数据线控制线连接连接系统端系统端的主要引线:的主要引线: D7D0 CS、RD、WR A1,A0:选择四个编址部件选择四个编址部件A1 A0 选选 择择0 0 计数器计数器00 1 计数器计数器11 0 计数器计数器21 1 控制寄

5、存器控制寄存器连接外设端的主要引线:连接外设端的主要引线: CLKn:时钟脉冲输入,计数器的计时基准。 (n = 02)OUTn:计数器输出信号,不同工作方式下输出不同波形。 (n = 02)GATEn:门控信号输入,控制计数器的启停。 (n = 02)7.1 7.1 概述概述三、计数三、计数/定时启动方法定时启动方法软件启动:软件启动:CPU用输出指令向计数器用输出指令向计数器写入初值后启动计数;写入初值后启动计数;硬件启动:硬件启动:写入初值后不启动计数,写入初值后不启动计数,外部电路信号(外部电路信号(GATE)启动计数。)启动计数。(1)软件启动过程)软件启动过程(2)硬件启动过程)硬

6、件启动过程 写入计数初值后不启动计数;门控信号写入计数初值后不启动计数;门控信号GATE端由低变高端由低变高,在,在CLK上升沿采样上升沿采样GATE信号;有,则该信号;有,则该CLK的下降沿开的下降沿开始计数。始计数。有有CLK与与GATE信号不同步问题信号不同步问题。 门控信号门控信号GATE有效(高电平);有效(高电平); 写入计数初值后第写入计数初值后第1个个 CLK,初值寄存器内容送计数器;,初值寄存器内容送计数器; 第第2个个CLK下降沿计数器开始减下降沿计数器开始减1计数,直到为计数,直到为0,OUT端端输出一个信号;输出一个信号; 实际实际CLK个数比写入的计数初值个数比写入的

7、计数初值N多一个,即多一个,即N+1。7.2 82537.2 8253编程编程 一、8253与系统的连接CLKGATEOUTD0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器高位地址高位地址A15-A28253共三组共三组可用可用74LS138等构成等构成接外设接外设一、8253与系统的连接7.2 82537.2 8253编程编程 请确定各计数器及控制寄存器地址?74LS138各计数器及控制寄存器地址FF04HFF07H7.2 82537.2 8253编程编程 二、8253的初始化编程两种初始化方法:两种初始化方法:(1)可按计数器分别写入控制字可按计数器分别写入控制字和计数初值

8、。和计数初值。(2)可先写所有计数器控制字,可先写所有计数器控制字,再写它们的计数初值。再写它们的计数初值。(1)确定每个计数器的工作方式和对计数器赋计数初值。不写自不写自动设为动设为0(2)7.2 82537.2 8253编程编程 三、8253控制字格式D7D6D5D4D3D2D1D00=二进制1=二十进制工作方式选择000=方式 0001=方式 1010=方式 2011=方式 3100=方式 4101=方式 5通道控制字寻址00=通道 0 控制寄存器01=通道 1 控制寄存器10=通道 2 控制寄存器11=不用读写操作00=锁定当前计数值01=读/写计数器低 8 位10=读写计数器高 8

9、位11=先读/写计数器低 8 位再 读/写计数器高 8 高位(SC1,SC0)(RW1,RW0)高8位M2M1M0BCD16位二进制计数4位BCD计数SC1 SC0RW1 RW0M2 M1 M0计数器0控制寄存器计数器1控制寄存器计数器2控制寄存器计数初值范围:计数初值范围:D0=0,二进制计数,二进制计数,0FFFFHD0=1,十进制计数,十进制计数,09999(1)方式0:计数结束中断计数到输出作为中断请求信号7.2 82537.2 8253编程编程 WRCWN=4CLKGATEOUT43210四、8253的工作方式写入控制字后写入控制字后OUT变低电平,写入计数初值后经过一个变低电平,写

10、入计数初值后经过一个CLK开始计数,计数减到开始计数,计数减到0输出输出OUT变高电平;变高电平;软件启动,不自动重复计数软件启动,不自动重复计数计数过程计数过程GATE=1,若,若GATE=0,暂停计数;,暂停计数;GATE=1,接着计数;接着计数;计数过程中,写入新计数初值,写完后按新值计数;计数过程中,写入新计数初值,写完后按新值计数;例:例:设设8253计数器计数器0工作于方式工作于方式0,用,用8位二位二十进制计数,十进制计数,计数值为计数值为50,则初始化程序段如下(设,则初始化程序段如下(设8253占用端口地址占用端口地址40H43H) :7.2 82537.2 8253编程编程

11、 MOVAL,11H ;设置控制字;设置控制字00 01 000 1OUT 43H,AL ;写入控制字寄存器;写入控制字寄存器MOV AL,50 ;设置计数初值;设置计数初值OUT 40H,AL ;写入计数初值寄存器;写入计数初值寄存器计数初值为计数初值为01FFH,如何修改?,如何修改?(2)方式1:可重复触发的单稳态触发器7.2 82537.2 8253编程编程 (3)方式2:频率发生器方式(4)方式3:方波发生器方式(5)方式4:软件触发选通方式(6)方式5:硬件触发选通例:例: 8253作定时/计数器,接口地址0120H0123H。要求:(1)计数器0每10ms输出一个CLK宽的负脉冲

12、;(2)计数器1产生10KHz的连续方波信号;(3)计数器2在定时5ms后产生输出高电平。输入8253的时钟频率为2MHz。画线路连接图,并编写初始化程序。分析:分析:计算计数初值、确定控制字计算计数初值、确定控制字 计数器计数器0:10ms/0.5s=20000;方式;方式2,16位,位,00 11 010 0(34H) 计数器计数器1:2 MHz/10kHz=200;方式;方式3,低,低8位,位,01 01 011 0(56H) 计数器计数器2: 5ms/0.5 s=10000;方式;方式0,16位,位, 10 11 000 0(B0H) 7.2 82537.2 8253编程编程 线路连接

13、图:CLK0GATE0OUT1D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2?7.2 82537.2 8253编程编程 初始化程序;计数器;计数器0:MOV DX, 0123HMOV AL, 34H ;计数器;计数器0的的CWOUT DX, ALMOV DX, 0120HMOV AX, 20000 ;计数器;计数器0初值初值OUT DX, ALMOV AL, AHOUT DX, AL;计数器;计数器1:MOV DX, 0123HMOV AL, 56H ;计数器;计数器1的的CWOUT DX, ALMOV

14、 DX, 0121HMOV AL, 200 ;计数器;计数器1初值初值OUT DX, AL;计数器计数器2: 7.2 82537.2 8253编程编程 1MHz1KHz1HzOUT1GATE1CLK1OUT0GATE0CLK0+5V+5V 这时可将计数器这时可将计数器0、1串联,工作方式均为方式串联,工作方式均为方式3,计,计数初值均为数初值均为1000。 当定时长度不够时,可把2个或3个计数器串联起来使用,甚至可把多个8253串联起来使用。如何扩展定时/计数范围?7.2 82537.2 8253编程编程 例如:CLK频率为1MHz,在OUT1要产生频率1Hz的脉冲。82538253应用专题应

15、用专题专题内容:主程序是将8254的计数器0设置为方式3(方波),CLK0接信号源1MHz,OUT0输出周期为60ms的方波并0接到某发光二极管上;中断服务程序用8254计数器1定时60ms产生一次中断,即将OUT1接入8259的MIR7,编程制作一个秒表在屏幕上显示时间。82538253应用专题应用专题要求:1、预习实验指导书P43:4.4 8254定时/计数器应用实验;预习教材第7章。2、预习相关内容,按专题报告模板完成其中的一至四项内容。3、进入实验室时,必须持有专题报告并已完成其中的一至四项内容。根据调试情况添加实验结果等内容,下课离开实验室时将报告交指导老师。4、根据专题报告、调试过程、完成情况、讨论情况评定成绩并记入理论课程和实验课程的期末总成绩。5、带实验指导书和教材。 82538253应用

温馨提示

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

评论

0/150

提交评论