版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第10章 可编程定时/计数器芯片 10.1 定时/计数器的概念 10.2 Intel 8253可编程定时/ 10.3 Intel 8253控制字和工作方式10.4 Intel 8253编程 开 始110.1 定时/计数器的概念 实现定时和计数有两种方法:硬件定时和软件定时。1软件定时 软件定时是利用CPU每执行一条指令都需要几个固定的指令周期的原理,运用软件编程的方式进行定时。 2硬件定时 (1)简单硬件定时 通过数字电路来实现定时,通常是使用单稳延时电路。 (2)可编程定时 目前在控制系统中,通常采用可编程定时/计数芯片来实现延时。 返回本章首页210.2 Intel 8253可编程定时/计
2、数器 10.2.1 Intel 8253的内部结构 10.2.2 Intel 8253的功能 返回本章首页310.2.1 Intel 8253的内部结构 8253是一种24引脚的双列直插式芯片,其中13条用于与CPU的连接,另外9条分配给3个独立的16位定时/计数器(也称为三个独立通道)用于与外设的连接。如图10-1所示。 图10-1 8253的引脚配置41与CPU相连的信号线(1)数据总线D0D7;(2)写输入信号;(3)读输入信号;(4)片选信号(5)片内寄存器地址输入信号A0、A152计数器与外设相连的信号线每个计数器均有三条信号线与外设相连,它们分别是:(1)计数输入时钟信号CLK (
3、2)计数器输出信号OUT(3)选通信号(门控输入)GATE返回本节610.2.2 Intel 8253的功能 8253的主要功能有:(1)每个计数器有六种工作方式;(2)计数脉冲可以是系统脉冲,也可以是外部事件;(3)计数时可以使用二进制,也可以使用BCD码;(4)触发方式可以是软件触发,也可以是硬件触发;(5)最大计数范围可达065535;(6)所有的输入输出与TTL兼容。 713个独立的16位计数器每个计数器内部都有一个8位的控制寄存器、一个16位的计数初值寄存器CR、一个16位的计数执行部件CE和一个16位的输出锁存器OL组成。初始化时,首先向计数初值寄存器CR写入计数初值,然后送入计数
4、执行部件CE。 计数执行部件CE实际上是一个16位的减1计数器,当减至0时,输出端输出相应信号表示计数结束。 输出锁存器OL用来锁存计数执行部件CE的内容,若要获取计数初值,则从计数初值寄存器中直接读出。CR、CE和输出锁存器OL均为16位寄存器,也可以用作8位寄存器,这样在8位数据总线的情况下8253仍然可以使用。 8253逻辑结构如图所示,内部有六个模块,分别是: 13个独立的16位计数器2控制字寄存器3读/写逻辑4数据总线缓冲器82控制字寄存器此寄存器用来保存来自CPU送入的控制字。控制字将决定计数器的工作方式、计数形式及输出方式,也能决定应如何装入计数器初值。8253的3个控制字寄存器
5、只占用一个地址号,根据控制字中最高二位来指定当前的控制字是发给哪一个计数器的。控制字寄存器只能写入,不能读取。 3读/写逻辑读/写逻辑的任务是接收来自CPU的控制信号,完成对8253各计数寄存器的读/写操作。 4数据总线缓冲器这是一个双向、三态8位缓冲器,它用于8253和系统数据总线连接。 返回本节910.3 Intel 8253控制字和工作方式10.3.1 Intel 8253的控制字 10.3.2 Intel 8253的工作方式 返回本章首页1010.3.1 Intel 8253的控制字18253的端口地址1128253的编程控制字(1)SC1SC0(D7D6)用于选择计数器。(2)M2M
6、0(D3D1)用于选择计数器的工作方式。(3)RL1RL0(D5D4)用于控制计数器读/写的字节数(1或2字节)以及读/写高低字节的顺序。(4)BCD(D0)用于指定计数器的码制,是按二进制还是按BCD码进行计数。1238253的读操作方法有两种:(1)读之前先停止计数在读数之前,先使计数器停止工作,然后读数,目前一般不会使用这种方法。(2)读之前先送计数值锁存命令这是常用的方法。在计数过程中,CPU读取计数值时,读取的高低字节可能不是同一时刻的值,为了防止CPU读到这种无效值,CPU进行计数值读取时必须锁存。 当CPU向8253写入一个合适的控制值(即RL1RL0=00)时,OLH和OLL锁
7、存CE中的当前计数值,然后跟随计数执行部件CE变化,直到允许锁存供CPU读取当前计数值时才停止。CPU读取之后又跟随CE变化。 返回本节1310.3.2 Intel 8253的工作方式 8253作为一个可编程的芯片,可以用6种方式工作,但不论使用哪种方式工作,都要遵守下面几条基本规则: (1)控制字写入计数器时,所有的控制逻辑电路立即复位,输出端OUT进入初始状态(高电平或低电平);(2)初始值写入之后,要经过一个时钟的上升沿和下降沿,计数执行部件才开始计数;(3)通常,在时钟脉冲CLK的上升沿,选通信号GATE被采样。 (4)在时钟脉冲的下降沿,计数器进行减1计数。0是计数器所能容纳的最大初
8、始值(模16时,二进制的0相当于216;模10000时,BCD码的0相当于10000)。14 (MODE 0) CLOCKWRn#OUTPUT(中断)43210n=4WRm#OUTPUT(中断)GATE m=4543210方式0:减1计数到0时发中断请求 15WRn#GATE(TRIGGER)43210OUTPUT34210 (MODE 1) CLOCKGATE(TRIGGER)OUTPUT234方式1:可编程单脉冲输出16WRn#4321 0(3)OUTPUTGATE(RESET)OUTPUT(MODE 2) CLOCKn=4n=3 0(4)3212100(3)3210(3)210(3)21
9、0方式2:周期性时间间隔计时器(频率发生器) 17422 1 0(4)OUTPUT n=4GATE(RESET)OUTPUT n=4n=4n=3 0(4)2103210(4)21 331(MODE 3) CLOCKOUTPUT n=53210(5)43210(5)430(5)430方式3:方波发生器18(MODE 4) CLOCKWRn#n=4OUTPUTn=401234443210LOADn GATEOUTPUT方式4:软件触发选通19(MODE 5) CLOCKOUTPUT(n=4)0123443210GATE GATEOUTPUT43方式5:硬件触发选通返回本节2010.4 Intel
10、8253编程 8253的控制寄存器和3个计数器具有独立的编程地址,并且根据控制字的内容可以确定所要操作的寄存器,因此8253的编程比较灵活。在编程时,只有两条规定必须严格遵守:(1)对计数器设置初值之前必须先写好控制字;(2)设置初始值时,要符合控制字的格式。编程的命令有两类,一类是读出命令,用于读取计数器当前的值;一类是写入命令,用于设置控制字、初始值和锁存。 返回本章首页211,8253初始化编程写入控制字。端口地址为8253端口始地址3,由D7和D6位的组合区分使用哪一个计数器。写入计数初值。根据控制字中读写指示位D5(RW1),D4(RW0)的编码决定,若规定只写低8位,则高8位自动置
11、0;若规定写16位,则先写低8位,后写高8位。22例1:置计数器0在工作方式3,按二进制计数,计数初值200H。解:确定方式控制字为36H,实现程序如下:MOVAL,36HMOVDX,CtrlPortOUTDX, AL ;方式方式控制字为36H送端口MOVDX, Port0MOVAL, 00H;计数初值的低8位OUTDX,ALMOVAL,02H;计数初值的高8位OUTDX,AL2,8253初始化编程举例SC1SC0RW1RW0M2M1M0BCD00001111233,8253编程应用举例例2:在一个实际的数据采集系统中,要求每5秒采一个数,现场的主时钟的振荡频率为2.5MHz。解:若外部时钟为
12、2.5MHz,则计数次数(计数初值)为5/(1/2.5*106)=1.25*107一个计数器最大的计数次数为65536,所以必须采用二次计数器。用计数器0的输出OUT0 接计数器1的输入时钟CLK1。若计数器0的计数初值为50000;则OUT0的输出脉冲频率为着(2.5*106)/(5*104)=50Hz。即周期为0.02s。为了每5秒产生一个脉冲输出,计数器1为分频器(方式2),计数次数为5s/0.02=250经以上分析,总结如下:24计数器0:方式3,输出50Hz脉冲, 控制字36H , 计数初值C350H计数器1:方式2,分频, 控制字54H ,计数初值FAH程序如下:MOVAL,36HMOVDX,CtrPortOUTDX,AL;写计数器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年厦门市海沧区东孚中学公开招聘非在编教师、产假顶岗教师备考题库及完整答案详解一套
- 2026年南大附小第三分校招聘语文、数学教师各一名备考题库附答案详解
- 2026年中共天台县委宣传部下属事业单位公开选聘工作人员备考题库及一套答案详解
- 2026年公开招聘中国农科院创新工程院级科研团队首席科学家的备考题库及答案详解一套
- 2026年岭南国防教育基地场馆操作员招聘10人备考题库及一套参考答案详解
- 2026年关于浏阳市金阳医院、浏阳市永安镇中心卫生院第三批公开招聘编外劳务派遣人员的备考题库及参考答案详解一套
- 2026年劳务派遣人员招聘(派遣至浙江大学能源工程学院东方电气集团)备考题库及完整答案详解1套
- 2026年国家电投集团江西电力有限公司招聘备考题库及参考答案详解一套
- 2026年厦门市嘉禾学校编外教师招聘备考题库及答案详解参考
- 2026年中银富登村镇银行招聘备考题库及参考答案详解
- 2024年度企业所得税汇算清缴最 新税收政策解析及操作规范专题培训(洛阳税务局)
- 实验室检测质量控制与管理流程
- 中小学教学设施设备更新项目可行性研究报告(范文)
- 2024年征兵心理测试题目
- 福建省三明市2024-2025学年七年级上学期期末语文试题
- 输电线路安全课件
- 病区8S管理成果汇报
- 河南省郑州市中原区2024-2025学年七年级上学期期末考试语文试题
- 服装店铺的运营管理
- 土石方工程施工中的成本控制措施
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
评论
0/150
提交评论