《微型计算机接口技术课件》 定时计数技术_第1页
《微型计算机接口技术课件》 定时计数技术_第2页
《微型计算机接口技术课件》 定时计数技术_第3页
《微型计算机接口技术课件》 定时计数技术_第4页
《微型计算机接口技术课件》 定时计数技术_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

1、? ?微型计算机接口技术课微型计算机接口技术课件件? ?第第4 4章章 定时计数技术定时计数技术4.1 定时定时/计数技术计数技术1.定时定时例如例如: 一天24小时的计时(称为日时钟)。 在监测系统中,对被测点的定时取样。 在读键盘时,为去抖,一般延迟一段时间,再读。 在步进电机速度控制程序中,利用时间间隔来控制步进电机的转速。2.计数计数 例如例如: 对零件和产品的计数; 对大桥和高速公路上车流量的统计,等等。22022-5-234.3.2 定时器定时器硬件定时器有不可编程定时器和可编程定时器两种。1.不可编程定时器不可编程定时器 不可编程定时器的不可编程定时器的定时间隔定时间隔和定时范围

2、固定,定时范围固定,采用采用中小规模集成电路器件构成的定时电路。常见的定时器件有单稳触发器和单稳触发器和555、556定时器定时器等,利用其外接电阻、电容的组合,可实现一定范围的定时。2.可编程定时器可编程定时器 可编程定时器可编程定时器的定时间隔定时间隔和定时范围定时范围可由程序进行设程序进行设定和改变定和改变,使用方便灵活。可编程定时电路一般都是采用可编程定时采用可编程定时/计计数器数器外围支持芯片芯片,如Intel 82C54A来实现的。52022-5-234.4 实现外部定时实现外部定时/计数的解决方案计数的解决方案采用可编程定时/计数器82C54A实现外部定时的方案。82C54A是微

3、处理器处理实时事件的重要支持芯片,在实时时钟、事件计数以及速度控制等方面都非常有用。定时/计数器82C54A的外部特性1.外部特性82C54A的外部引脚如下图。62022-5-23图4.1 8253引脚82C54A的引脚可分为面向CPU和面向I/O设备两侧 1面向CPU的信号线 数据总线D0D7:为三态输出/输入线。用于将8253与系统 数据总线相连。 片选线CS:为输入信号,低电平有效。 读信号RD:为输入信号,低电平有效。 写信号WR:为输入信号,低电平有效。 地址线A1A0:这两根线接到系统地址总路线的A1A上。 2面向I/O设备的信号线 计数器时钟信号CLK:CLK为输入信号。 计数器

4、门控选通信号GATE(0-2):为输入信号。 计数器输出信号OUT(0-2);为输出信号。72022-5-23定时定时/计数器计数器82C54A的工作方式的工作方式为了满足不同的应用要求,为了满足不同的应用要求,82C54A设置了设置了6种种工作方式,其中,工作方式,其中,2方式和方式和3方式比较常用,应重点掌握。方式比较常用,应重点掌握。1. 0方式:事件计数器方式,其波形如下图。方式:事件计数器方式,其波形如下图。82022-5-23图4.2 方式00方式特点:方式特点: 0方式的典型应用是做事件计数器方式的典型应用是做事件计数器,计数器的大小就是计数初值,改变计数初值就可以改变计数器的大

5、小。 0方式当写入计数初值后,启动计数器开始计数,OUT信号变为低电平,并维持低电平至减法计数器的内容减到0时,停止工作,OUT信号变为高电平,并维持高电平到再次写入新的计数值,可见,0方式输出单次波方式输出单次波。 0方式的方式的计数过程由写信号软启动计数过程由写信号软启动,写入计数初值后开始计数,不需外加启动信号;计数结束,自动停止,不需外加停止信号。92022-5-232. 1方式:可重触发单稳触发器方式方式:可重触发单稳触发器方式1方式波形如下图。方式波形如下图。102022-5-23图4.3 方式一输出波形1方式特点:方式特点: 1 1方式的典型应用是作可编程单稳态触发器方式的典型应

6、用是作可编程单稳态触发器,单稳延迟时间=计数初值时钟脉宽,延时期间输出的是低电平,低电平的宽度可以由程序控制,即改变计数初值就可以改变延时时间。 1方式方式在写入计数初值后,再由由GATE门信号硬启动计数门信号硬启动计数,OUT变为低电平,每来一个CLK,计数器减l直到计数值减到0时,停止工作,OUT输出高电平,并维持高电平到GATE门信号再次启动。 1方式由GATE门信号每触发1次仅输出一个波形,故1方式也是方式也是输出输出单次波单次波。112022-5-233. 2方式:分频器方式方式:分频器方式 2方式是一种具有自动装入时间常数的分频器,方式是一种具有自动装入时间常数的分频器,其波形如下

7、图。其波形如下图。122022-5-23图4.4 方式二2方式特点:方式特点: 2方式的典型应用是做分频器方式的典型应用是做分频器,分频系数就是计数初值。改变计数初值就可以改变输出负脉冲波形的频率。 2方式方式在写入计数初值后,由写信号软启动计数器由写信号软启动计数器开始减l计数,直到减到l时,OUT输出一个宽度为时钟CLK周期的低电平,接着又变为高电平,软启动计数开始且计数初值自动重装,开始下一轮计数,如此往复,不停地工作。 2方式具有自动重装计数初值功能,故2方式能够连续方式能够连续输出负脉冲输出负脉冲波形波形。132022-5-234. 3方式:方波发生器方式方式:方波发生器方式 3方式

8、具有自动装入时间常数计数初值方式具有自动装入时间常数计数初值的功能。的功能。3方式的波形如下图。方式的波形如下图。142022-5-233 3方式的波形图如下。方式的波形图如下。152022-5-23图4.5 方式三3方式特点:方式特点: 3方式的典型应用是做方波发生器,方波的周期方式的典型应用是做方波发生器,方波的周期=计数计数初值时钟脉冲的周期。改变计数初值就可以改变输出初值时钟脉冲的周期。改变计数初值就可以改变输出方波的频率。方波的频率。 3方式在写入计数初值后,由写信号软启动计数器开始方式在写入计数初值后,由写信号软启动计数器开始计数,计数,OUT输出占空比为输出占空比为1 1或近似或

9、近似1 1的连续方波。的连续方波。当计数初值为偶数时,输出波形的占空比为当计数初值为偶数时,输出波形的占空比为1 1,如图,如图a所示。当计数初值为奇数时,输出波形的占空比为所示。当计数初值为奇数时,输出波形的占空比为近似近似1 1,如图,如图b所示。所示。 计数结束后,计数初值自动重装,开始下一轮计数,如计数结束后,计数初值自动重装,开始下一轮计数,如此往复,不停的工作,因此,此往复,不停的工作,因此,3方式连续输出方波。而方式连续输出方波。而2方式连续输出的是负脉冲波。方式连续输出的是负脉冲波。162022-5-235. 4方式:单次负脉冲发生器方式方式:单次负脉冲发生器方式 4方式的输出

10、波形如下图。方式的输出波形如下图。172022-5-23图4.6 方式四4方式特点:方式特点: 4方式的典型应用是单次负脉冲发生器方式的典型应用是单次负脉冲发生器,负脉冲宽度等于时钟脉冲的周期。改变计数初值就可以改变选通脉冲产生的时间。 4方式计数从写入计数初值后开始,OUT输出高电平,减1计数直到计数值减到0时,在OUT端输出一个宽度等于时钟CLK脉冲周期的负脉冲,并停止工作。显然,4方式的方式的计数过程由写信号软启动计数过程由写信号软启动。 4方式方式不具备计数初值重装能力,故输出单次波形输出单次波形。182022-5-23192022-5-236. 5方式:单次负脉冲发生器方式方式:单次

11、负脉冲发生器方式5方式的输出波形如下图方式的输出波形如下图图4.7 方式五2022-5-23205方式特点:方式特点: 5方式的典型应用是做单次负脉冲发生器方式的典型应用是做单次负脉冲发生器,选通脉冲宽度等于时钟脉冲的周期。改变计数初值就可以改变选通脉冲产生的时间。 5方式的计数开始是由方式的计数开始是由GATE门信号硬启动门信号硬启动,OUT输出高电平,开始减1计数直到计数值减到0时,在OUT端输出一个宽度等于时钟CLK脉冲周期的负脉冲,并停止工作。 5方式方式不具备计数初值重装能力,也是输出单次波形输出单次波形。 5方式与4方式不同之处是计数启动信号不同,5方式是GATE信号硬启动,4方式

12、是写信号软启动。2022-5-2321小结:小结:6 种工作方式的比较种工作方式的比较 0方式和方式和1方式,这两种方式的输出波形类似,均为单次方式,这两种方式的输出波形类似,均为单次波。区别在于计数启动方式不同,前者为软启动,后者是波。区别在于计数启动方式不同,前者为软启动,后者是硬启动。硬启动。 2方式和方式和3方式,这两种方式共同的特点是具有自动再加方式,这两种方式共同的特点是具有自动再加载装入功能能力。二者的区别在于:载装入功能能力。二者的区别在于:2方式连续输出宽方式连续输出宽度为度为1个个TCLK的负脉冲。的负脉冲。3方式连续输出占空比为方式连续输出占空比为1:1的方的方波或近似方

13、波。波或近似方波。 4方式和方式和5方式。这两种方式的方式。这两种方式的OUT输出波形相同,两者输出波形相同,两者的区别是计数启动的触发信号不同,前者由写信号启动计的区别是计数启动的触发信号不同,前者由写信号启动计数,后者由数,后者由GATE信号启动计数。信号启动计数。 2022-5-23222022-5-2323定时定时/计数器计数器82C54A的编程模型的编程模型82C54A的编程模型包括内部可访问的存放器的编程模型包括内部可访问的存放器及其端口地址、工作方式、命令字。用户可利用这个编程模及其端口地址、工作方式、命令字。用户可利用这个编程模型对型对82C54A进行编程。进行编程。 1. 8

14、2C54A内部存放器内部存放器 2C54A内部存放器有内部存放器有1个命令存放器和个命令存放器和3个独个独立的计数器立的计数器02,也叫做计数器通道。,也叫做计数器通道。3个独立的计数个独立的计数器中,每个计数器内部又包含器中,每个计数器内部又包含3个不同功能的个不同功能的16位存放器:位存放器:计数初值存放器、减法计数器和当前计数值锁存器。计数初值存放器、减法计数器和当前计数值锁存器。2C54A内部逻辑结构如下图。内部逻辑结构如下图。242022-5-23图4.8 82C54A的内部存放器下面介绍82C54A的3个独立计数器内部存放器的作用。3个独立计数通道(计数器)如下图。2022-5-2

15、325图4.9 计数器通道的3个存放器2022-5-2326 每个计数通道包含计数初值存放器、减每个计数通道包含计数初值存放器、减1计数器和当前计数计数器和当前计数值锁存器值锁存器 计数初值存放器计数初值存放器16位:用于存放计数初值定时常数、位:用于存放计数初值定时常数、分频系数,最大计数值为分频系数,最大计数值为6553664KB。计数初值存放。计数初值存放器的计数初值,在计数器计数器的计数初值,在计数器计数 过程中保持不变。当需要重复过程中保持不变。当需要重复计数时,取出计数初值重装到减计数时,取出计数初值重装到减1计数器。计数器。 减减1计数器计数器16位:在初始化时同时一起装入的计数

16、初值,位:在初始化时同时一起装入的计数初值,用于进行减用于进行减1计数操作,每来一个时钟脉冲,它就作减计数操作,每来一个时钟脉冲,它就作减1运算,运算,直至将计数初值减为零。直至将计数初值减为零。 当前计数值锁存器当前计数值锁存器16位:用于锁存减位:用于锁存减1计数器的内容,计数器的内容,以供读出和查询。以供读出和查询。2022-5-23272. 82C54A的编程命令的编程命令 82C54A有有3个命令,其中方式命令最重要,应重点学个命令,其中方式命令最重要,应重点学习。习。 (1)方式命令方式命令 方式命令的作用是对方式命令的作用是对82C54A进行初始化,初始化进行初始化,初始化的内容

17、见节。方式命令的格式如下图。的内容见节。方式命令的格式如下图。 图4.10 82C54A工作方式命令格式2022-5-2328(2)锁存命令:锁存命令: 锁存命令的作用是将当前计数值先锁存起来再读。锁存命令的作用是将当前计数值先锁存起来再读。 锁存命令只有当要求读取当前计数值时才使用。锁存命令只有当要求读取当前计数值时才使用。 锁存命令的格式如下图。锁存命令的格式如下图。图4.11 锁存命令格式2022-5-2329 锁存命令字锁存命令字8位分两个字段:位分两个字段: 计数器选择字段计数器选择字段D7D6; 锁存命令特征位字段锁存命令特征位字段D5D4。 当当D5D4=00时,就是锁存命令;时

18、,就是锁存命令; 当当D5D400时,就是方式命令的读时,就是方式命令的读/写指示位。写指示位。 其余位其余位D3D0与锁存命令无关。与锁存命令无关。2022-5-2330(3)读回命令:读回命令: 读回命令与前面的锁存命令不同,它既能锁存计读回命令与前面的锁存命令不同,它既能锁存计数值又能数值又能锁存状态信息,而且读回命令可以锁存与读回单锁存状态信息,而且读回命令可以锁存与读回单个或个或3个计数器的当前计数值和状态。其格式如下个计数器的当前计数值和状态。其格式如下图。图。图4.11 读回命令格式例如:读取计数器2的当前计数值,那么读回命令=11011000B;读取计数器2的当前状态,那么读回

19、命令=11101000B;读取计数器2的当前计数值和状态,那么读回命令=11001000B;读取全部3个计数器的当前计数值和状态,那么读回命令=11001110B。4.5 实现外部定时的计数初值计算实现外部定时的计数初值计算4.5.1 计数初值的计算计数初值的计算计数初值分两种情况:假设作计数器用计数初值分两种情况:假设作计数器用时,那么无须计算,将计数的次数直接装入;假设时,那么无须计算,将计数的次数直接装入;假设作定时器用时,那么计数初值需要经过换算才能得作定时器用时,那么计数初值需要经过换算才能得到。其换算方法如下。到。其换算方法如下。1要求产生定时时间间隔的定时常数要求产生定时时间间隔

20、的定时常数TC 4-12要求产生频率为要求产生频率为f的信号波形的定时常数的信号波形的定时常数TC 4-2312022-5-23CCLK1/CLKT 要求定时的时间时钟脉冲周期CCLKTf时钟脉冲的频率要求的波形频率4.5.2 计数初值的装入计数初值的装入由于由于82C54A内部的减法计数器和计数内部的减法计数器和计数初值存放器是初值存放器是16位,位,而而82C54A外部引脚数据信号线只有外部引脚数据信号线只有8位,故位,故16位计位计数初值要分两次数初值要分两次装入,并且按先装低装入,并且按先装低8位、后装高位、后装高8位的顺序写入计位的顺序写入计数器的数据口。数器的数据口。只有只有2方式

21、和方式和3方式具有自动重装计数初值的功能,方式具有自动重装计数初值的功能,其他方式都需要用户其他方式都需要用户通过程序人工重装计数初值。通过程序人工重装计数初值。计数初值的范围计数初值的范围 由于计数初值存放器和减法计数器是由于计数初值存放器和减法计数器是16位,位,故计数初值的范围以二进制数表示为故计数初值的范围以二进制数表示为0000HFFFFH;以十进制数;以十进制数BCD表示为表示为00009999。322022-5-234.6 外部定时外部定时/计数器的初始化计数器的初始化 82C54A初始化有两个工作要做: 1.向命令存放器写入方式命令字,包括选择计数器3个计数器之一,确定工作方式

22、6种方式之一,指定计数器计数初值的长度和装入顺序以及计数值的码制BCD或二进制码。 2.向已选定的计数器按方式命令的要求写入计数初值。 写入计数初 值的顺序如下: 当RW1RW0=01时,只写入低8位,高8位自动置0; 当RW1RW0=10时,只写入高8位,低8位自动置0; 当RW1RW0=11时,写入16位,先写低8位,后写高8位。332022-5-23例如,选择例如,选择2 2号计数器,工作在号计数器,工作在3 3方式,计数初值方式,计数初值为为533H533H2 2个字节,采用二进制计数。个字节,采用二进制计数。 汇变语言初始化程序段如下。汇变语言初始化程序段如下。 MOV DX,307

23、H MOV DX,307H ; ;命令口命令口 MOV AL,10110110B MOV AL,10110110B ;2;2号计数器的方式命号计数器的方式命令字令字 OUT DX,AL OUT DX,AL MOV DX,306H MOV DX,306H ;2 ;2号计数器数据号计数器数据口口 MOV AX,533H MOV AX,533H ; ;计数初值计数初值 OUT DX,AL OUT DX,AL ; ;先送低字节到先送低字节到2 2号计数器号计数器 MOV AL,AH MOV AL,AH ; ;取高字节送取高字节送ALAL OUT DX,AL OUT DX,AL ; ;后送高字节到后送高

24、字节到2 2号计数器号计数器2022-5-23344.7 定时定时/计数器的应用计数器的应用4.7.1 系统配置的定时系统配置的定时/计数器应用计数器应用1.系统配置的系统配置的82C54A应用设置应用设置如下图。其中:如下图。其中: OUT0用用作时钟中断用用作时钟中断 OUT1用要用做存储器动态定时刷新用要用做存储器动态定时刷新 OUT2用用作扬声器发声控制用用作扬声器发声控制 0号计数器号计数器=40H端口地址端口地址 1号计数器号计数器=41H端口地址端口地址 2号计数器号计数器=42H端口地址端口地址 方式命令存放器方式命令存放器=43H端口地址。端口地址。以上用途设置及地址的分配用

25、户不能更改。以上用途设置及地址的分配用户不能更改。系统提供个时钟脉冲频率为。系统提供个时钟脉冲频率为。352022-5-23图4.13 微机系统配置的82C54A应用362022-5-232 2微机系统配置的微机系统配置的82C54A82C54A初始化程序段初始化程序段1 1计数器计数器0 0:用于定时中断约:用于定时中断约55ms55ms申请申请1 1次中断次中断MOV AL,00110110B MOV AL,00110110B ; ;初始化方式命令初始化方式命令OUT 43H,ALOUT 43H,AL MOV AX,00H MOV AX,00H ; ;初值为初值为0000H0000H最大值

26、最大值OUT 40H,AL OUT 40H,AL ; ;先写低字节先写低字节MOV AL,AHMOV AL,AH OUT 40H,AL OUT 40H,AL ; ;再写高字节再写高字节 2 2计数器计数器1 1:用于:用于DRAMDRAM定时刷新每隔定时刷新每隔15s15s请求请求1 1次次DMADMA传输传输MOV AL,01010100B MOV AL,01010100B ; ;初始化方式命令初始化方式命令OUT 43H,ALOUT 43H,AL MOV AL,12H MOV AL,12H ; ;初值为初值为12H12H OUT 41H,AL OUT 41H,AL ; ;只写低字节只写低字

27、节3 3计数器计数器2 2:用于产生约:用于产生约900Hz900Hz的方波使扬声器发的方波使扬声器发声声MOV AL,10110110B MOV AL,10110110B ; ;初始化方式命令初始化方式命令OUT 43H,ALOUT 43H,AL MOV AX,533H MOV AX,533H ; ;初值为初值为533H533H OUT 42H,AL OUT 42H,AL ; ;先写低字节先写低字节MOV AL,AHMOV AL,AH OUT 42H,AL OUT 42H,AL ; ;再写高字节再写高字节4.8.1 定时定时/计数器用作测量脉冲宽度计数器用作测量脉冲宽度例例4.1 用用82C

28、54A测量脉冲宽度测量脉冲宽度1.要求要求某应用系统中,要求测量脉冲的宽度。系某应用系统中,要求测量脉冲的宽度。系统提供的输入时钟统提供的输入时钟CLK=1MHz,采用二进制计数,采用二进制计数。2.分析分析 在软启动时,门控信号在软启动时,门控信号GATE的作用是允的作用是允许或禁止计数。例如,许或禁止计数。例如,0方式就有这种特点,因方式就有这种特点,因此可以利用此可以利用GATE门进行脉冲宽度测量,把被测门进行脉冲宽度测量,把被测的脉冲作为的脉冲作为GATE门信号来控制计数器的计数过门信号来控制计数器的计数过程,即控制计数的启程,即控制计数的启/停。在被测脉冲信号为低停。在被测脉冲信号为

29、低电平时,装计数初值,当被测脉冲信号变高电平电平时,装计数初值,当被测脉冲信号变高电平时,开始计数,直至被测脉冲信号再次变低电平时,开始计数,直至被测脉冲信号再次变低电平,停止计数,并锁存。然后读出计数器,停止计数,并锁存。然后读出计数器1的当前的当前值值n,最后得到被测脉冲宽度是,最后得到被测脉冲宽度是65536-ns。4.8 定时定时/计数器的应用设计举例计数器的应用设计举例2022-5-23373.设计设计选择计数器通道选择计数器通道1,工作方式为,工作方式为0方式。如下图。方式。如下图。 从波形图中可以看出,当当GATE1门信号也就是被测信号为低电平时,被测信号为低电平时,即使写入计数

30、初值也不开始计数不开始计数,只有当当GATE1门信号也就是被测信号被测信号变为高电平时才开始计数操作变为高电平时才开始计数操作,并且直到直到GATE1门信号也就是被测信号被测信号再次变为低电平时才结束。再次变为低电平时才结束。于是把这一段计数过程中所累积的时钟计数把这一段计数过程中所累积的时钟计数脉冲的个数乘以脉冲的周期脉冲的个数乘以脉冲的周期就得到被测信号的宽度。被测信号的宽度。2022-5-2338图4.14 脉冲宽度测量原理图脉宽测量汇编语言程序段如下。脉宽测量汇编语言程序段如下。 MOV DX,307H ;82C54A的命令口 MOV AL,70H ;方式命令方式命令 OUT DX,A

31、L MOV DX,305H ;1号计数器的数据口 MOV AX,0000H ;定时常数定时常数 OUT DX,AL ;定时常数低字节 MOV AL,AH ;定时常数高字节 OUT DX,AL MOV DX,307H ;82C54A的命令口 MOV AL,40H ;1号计数器的锁存命令锁存命令 MOV DX,305H IN AL,DX ;从1号计数器读当前计数值读当前计数值,保存 MOV BL,AL IN AL,DX MOV BH,AL MOV AX,0000H SUB AX,BX ;65536-BX,可得被测脉冲的宽度被测脉冲的宽度2022-5-23394.8.2 定时定时/计数器用作定时计数

32、器用作定时 例例4.2 用用82C54A定时定时 1.要求要求 某应用系统中,要求定时器每隔某应用系统中,要求定时器每隔5ms发出发出一个扫描负脉冲,系统提供的时钟一个扫描负脉冲,系统提供的时钟CLK为为20kHz,使用十进制计数。试写出定时器的初始化程序,使用十进制计数。试写出定时器的初始化程序。2.分析分析1选择工作方式选择工作方式 为了产生每隔为了产生每隔5ms一次的连续的定一次的连续的定时脉冲,选择时脉冲,选择82C54A的的2方式是适宜的。为此,方式是适宜的。为此,利用利用82C54A的计数器的计数器2,将它的,将它的OUT2作为定时作为定时脉冲输出。脉冲输出。2计算定时常数计算定时

33、常数 因为是做定时器,故需要进行定时因为是做定时器,故需要进行定时常数计算。将系统提供的常数计算。将系统提供的CLK作为通道作为通道2的输入的输入时钟时钟CLK2,其周期,其周期T=1/20kHz=0.05ms, 按照要按照要求定时时间为求定时时间为5ms,根据式,根据式4-1,可得定时常,可得定时常数为数为 TC=5ms/0.05ms=1002022-5-23403初始化程序初始化程序定时器汇编语言初始化程序段如下。 MOV DX,307H ;82C54A的命令口 MOV AL,95H ;方式命令方式命令 OUT DX,AL MOV DX,306H ;计数器2的数据口 MOV AL,100

34、;定时常数定时常数 OUT DX,AL2022-5-23414.8.3 定时定时/计数器用作分频计数器用作分频例例4.3 用用82C54A进行分频进行分频1.要求要求 某应用系统中,要求方波发生器产生某应用系统中,要求方波发生器产生f=1000Hz的方波,系统提供的输入时钟,采用的方波,系统提供的输入时钟,采用二进制计数。试写出分频器的初始化程序。二进制计数。试写出分频器的初始化程序。2.分析分析1选择工作方式选择工作方式 为了产生方波,选择为了产生方波,选择82C54A的的3方方式是适宜的。为此,利用式是适宜的。为此,利用82C54A的计数器的计数器0,将,将它的它的OUT0作为方波输出。作

35、为方波输出。2计算计数初值计算计数初值将系统提供的将系统提供的CLK作为计数器作为计数器0的输的输入时钟入时钟CLK0,按照要求输出,按照要求输出OUT0=1000Hz的的方波,根据式方波,根据式4-2,可得定时常数为,可得定时常数为2022-5-23423初始化程序初始化程序分频器汇编语言初始化程序段如下。分频器汇编语言初始化程序段如下。 MOV DX,307H ;82C54A的命令口 MOV AL,36H ;方式命令方式命令 OUT DX,AL MOV DX,304H ;计数器0的数据口 MOV AX,4A9H ;定时常数定时常数 OUT DX,AL ;装入定时常数低字节 MOV AL,A

36、H OUT DX,AL ;装入定时常数高字节2022-5-23432022-5-23444.8.4 定时定时/计数器同时用作计时和分频计数器同时用作计时和分频例利用例利用82C54A在生产线进行计数与定时在生产线进行计数与定时1.要求要求 某罐头包装流水线,一个包装箱能装某罐头包装流水线,一个包装箱能装24罐,要求每通过罐,要求每通过24罐,流水线要暂停罐,流水线要暂停5s,等待封,等待封箱打包完毕,然后重启流水线,继续装箱。按箱打包完毕,然后重启流水线,继续装箱。按Esc键那么停止生产。键那么停止生产。2.分析分析 为了实现上述要求,有两个工作要为了实现上述要求,有两个工作要做:一是对做:一

37、是对24罐计数;二是对罐计数;二是对5s停顿定时。并且停顿定时。并且,两者之间又是相互关联的。,两者之间又是相互关联的。 为此,选用为此,选用82C54A的计数器的计数器0作计数器,计作计数器,计数器数器1作定时器,并且把计数器作定时器,并且把计数器0的计数已到的计数已到24的输出信号的输出信号OUT0,连到计数器,连到计数器1的的GATE1线线上,作为外部硬件启动信号触发计数器上,作为外部硬件启动信号触发计数器1的的5s定定时,去控制流水线的暂停与重启。时,去控制流水线的暂停与重启。 其工作流程中的计数与定时之间的关系如下其工作流程中的计数与定时之间的关系如下图。图。2022-5-2345图

38、4.15 工作流程中的计数与定时之间的关系3.设计设计(1)硬件设计硬件设计 电路结构原理如下图。电路结构原理如下图。 检测原理是罐头从光源和光敏电阻检测原理是罐头从光源和光敏电阻R R之间通过时,在晶之间通过时,在晶体管体管T T发射极上会产生罐头的脉冲信号,此脉冲信号作为发射极上会产生罐头的脉冲信号,此脉冲信号作为计数脉冲,接到计数器计数脉冲,接到计数器0 0的的CLK0CLK0,对罐头进行计数。,对罐头进行计数。计数器计数器0 0作为计数器,工作在作为计数器,工作在2 2方式。计数器方式。计数器1 1作为定时器,工作为定时器,工作在作在1 1方式方式2022-5-2346图4.16 包装流水线计数-定时装置电路原理(2)软件设计软件设计包装流水线汇编语言程序段只写出代码段如下。包装流水线汇编语言程序段只写出代码段如下。 code segmentSTART: MOV DX,307H ;计数器计数器0初始化初始化 MOV AL,15H ;命令字命令字 OUT DX,AL MOV DX,304H ;写计数器写计数器0计数初值计数初值 MOV A

温馨提示

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

评论

0/150

提交评论