当前位置:文档之家› s高速脉冲计数器及PTO和PWM

s高速脉冲计数器及PTO和PWM

s高速脉冲计数器及PTO和PWM
s高速脉冲计数器及PTO和PWM

高速脉冲计数器

高速计数器专用输入高速计数器使用的输入

HSCO 10.0, 10.1,0.2

HSC1 10.6, 10.7,11.0,11.1

HSC2 11.2, 11.3,11.4,11.5

HSC3 I0.1

HSC4 I0.3, I0.4,I0.5

HSC5 I0.4

有些高速计数器和边缘中断的输入点赋值存在某些重叠。同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。例如,如果在模式2中使用HSCQ模式2使用I0.0

和I0.2,贝U I0.1可用于边缘中断或用于HSC3

如果所用的HSC0模式不使用输入I0.1 ,则该输入可用于HSC3或边缘中断。与此相似,如果所选的HSC0 模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5

请注意HSC0的所有模式均使用I0.0 , HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点绝不会用于其他用途。

四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计

数器)。这些控制位位于各自计数器的控制字节内,只在执行HDEFt令时才使用。

执行HDEF旨令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。

复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x (或4乘以输入时钟频率)。一旦执行了HDEF旨令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。

下表复位和启动输入的有效电平以及1x/4x控制位

**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。

定义控制字节

一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。每台高速计数器均有一个控制字节,

允许完成以下作业:

*启用或禁止计数器

*控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向

*载入当前值

通过执行HSC指令可激活控制字节以及相关当前值和预设值检查。下表说明每个控制位。

设置当前值和预设值

每台高速计数器都有一个32位初始值和一个32位预设值,初始值和预设值均为带符号的整数值。欲向高速计数器载入新的初始值和预设值,您必须设置包含初始值和/或预设值的控制字节及特殊内存字节。然后您必须执行HSC指令,将新数值传输至高速计数器。下表说明用于包含新当前值和预设值的特殊内存字节。

除控制字节以及新预设值和当前值保持字节外,还可以使用数据类型HC (高速计数器当前值)加计数器

号码(0、1、2、3、4或5)读取每台高速计数器的当前值。因此,读取操作可直接存取当前值,但只有用上述HSC指令才能执行写入操作。

指定中断

所指有定计中数断器模式都支持在HSC勺当前值等于预设值时产生一个中断事件。使用外部复位端的计数模式支持外部复位中断。除去模式0、1和2之外,所有计数器模式支持计数方向改变中断。每种中断条件都可以分别使能或者禁止。要得到关于使用中断的更多信息,参见通讯和中断指令一节

注:当使用外部复位中断时,不要写入初始值,或者是在该中断服务程序中禁止再允许高速计数器,否则会产生一个致命错误。

状态字节

每个高速计数器都有一个状态字节,其中的状态存储位指出了当前计数方向,当前值是否大于或者等于预置值。下表给出了每个高速计数器状态位的定义

提示:只有在执行中断服务程序时,状态位才有效。监视高速计数器状态的目的是使其它事件能够产生中断 以完成更重要的操作。

HSC (到HSC 啲状态位

脉冲输出指令

脉冲输出(PLS )指令被用于控制在高速输出( Q0.0和Q0.1 )中提供的"脉冲串输出"(PTO 和"脉宽调 制"(PWM 功能。PTOt 供方波(50%占空比)输出,配备周期和脉冲数用户控制功能。 PW 提供连续性变量

占空比输出,配备周期和脉宽用户控制功能。

识别S7-200高速输出指令

S7-200有两台PTO/PW 发生器,建立高速脉冲串或脉宽调节信号信号波形。一台发生器指定给数字输出 点Q0.0,另一台发生器指定给数字输出点 Q0.1。一个指定的特殊内存 (SM )位置为每台发生器存储以下数据:

一个控制字节(8位值)、一个脉冲计数值(一个不带符号的

32位值)和一个周期和脉宽值(一个不带符号的

16位值)。

PTO/PW 发生器和过程映像寄存器共用 Q0.0和Q0.1。PTO 或PWI 功能在Q0.0或Q0.1位置现用时,PTO/PW 发 生器控制输出,并禁止输出点的正常使用。输出信号波形不受过程映像寄存器状态、点强迫数值、执行立即 输出指令的影响。PTO/PW 发生器非现用时,输出控制转交给过程映像寄存器。过程映像寄存器决定输出信 号波形的初始和最终状态,使信号波形在高位或低位开始和结束。 注释

在启用PTC 或PW 操作之前,将用于 Q0.0和Q0.1的过程映像寄存器设为 0。 所有的控制位、周期、脉宽和脉冲计数值的默认值均为

PTO/PW 输出必须至少有10%的额定负载,才能提供陡直的上升沿和下降沿。 每台PTO/PW 发生器有一个控制字节(8位),一个周期值和脉宽值(不带符号的 16位值)和一个脉冲计

值(不带符号的32位值)。这些值全部存储在特殊内存(

SM )区域的指定位置。一旦设置这些特殊内存位的

位置,选择所需的操作后, 执行脉冲输出指令(PLS 即启动操作。该指令使S7-200读取SM 位置,并为PTO/PWM 发生器编程。

通过修改S 輕域中(包括控制字节)要求的位置,您可以更改 指令。您可以在任意时间向控制字节( SM67.7或 SM77.7)的

PTO/PW 启用位写入零,禁用 的生成,然后执行PLS 指令。

脉冲串操作(PTO

PT 按照给定的脉冲个数和周期输出一串 方波(占空比50%)。(见右图) PT 可以产 生单段脉冲串或者多段串(使用脉冲包络)。 可以指定脉冲数

周期(以微秒或毫秒为增加 量):

-脉冲个数:1 到 4, 294, 967, 295 -周期: 10 卩

s 到65,535卩s 或者

2ms 至U 65,535ms 。

PTO 或 PW 的信号波形特征,然后执行 PLS

PTO 或 PW 信号波形

如果为周期指定一个奇微秒数或毫秒数(例 75ms )将会引起占空比失真

下表中是对计数和周期的限定。 PTO 功能的脉冲个数及周期

PTO 功能允许脉冲串“链接”或者“排队”。当当前脉冲串输出完成时,会立即开始输出一个新的脉冲 串。这保证了多个输

PTC 脉管冲的单段管线

在单段线串模式,需要为下一个脉冲串更新特殊寄存器。一旦启动了起始 PTO 段,就必须按照第二个波

形的要求改变特殊寄存器,并再次执行

PLS 旨令。第二个脉冲串的属性在管线中一直保持到第一个脉冲串发

送完成。在管线中一次只能存储一段脉冲串的属性。当第一个脉冲串发送完成时,接着输出第二个波形,此 时管线可以用于下一个新的脉冲串。重复这个过程可以再次设定下一个脉冲串的特性。

除去以下两种情况之外,脉冲串之间可以作到平滑转换:

时间基准发生了变化或者在利用 PLS 旨令捕捉到新脉冲之前,启动的脉冲串已经完成。 如果您在管线已满时尝试载入,状态寄存器( SM66.6或SM76.6)中的PTO 溢出位被设置。进入 RUN (运

行)模式时,该位被初始化为 0。如果您希望探测随后出现的溢出,则必须在探测到溢出之后以手动方式清

除该位。

PTO 脉冲线串的多段管线

在多段脉管模式,CPU 自动从V 存储器区的包络表中读出每个脉冲串的特性。在该模式下,仅使用特殊 存储器区的控制字节和状态字节。选择多段操作,必须装入包络表在 V 存储器中的起始地址偏移量(SMW168

或SMW17)。时间基准可以选择微秒或者毫秒,但是,在包络表中的所有周期值必须使用同一个时间基准, 而且在包络

正在运行时不能改变。执行

PLS 指令来启动多段操作。

每段记录的长度为8个字节,由16位周期值、16位周期增量值和32位脉冲个数值组成。下表中给出了包 络表的格式。您可以通过编程的方式使脉冲的周期自动增减。在周期增量处输入一个正值将增加周期;输入 一个负值将减少周期;输入 0将不改变周期。

如果您指定的周期增量在一定数量的脉冲后导致非法周期则会出现数学溢出条件。 PTC 功能被终止,输

出转换成映象寄存器控制。此外,状态字节(

SM66.4或 SM76.4)中的增量计算错误位被设为一。如果您以手

动方式异常中止正在运行的 PTO 包络,状态字节(SM66.5或SM76.5)中的用户异常中止位则被设为

当PTO 包络执行时,当前启动的段的编号保存在 SMB166(或SMB176。

脉宽调制(PWM

脉宽阔制(PWM )

PW 产生一个占空比变化周期固定的脉冲输 出,(见下图)您可以以微秒或者毫秒为单位指 定其周期和脉冲宽度:

-周期:10卩s 到65,535卩s 或者2ms 到65,535ms

-脉宽:0卩s到65,535卩s或者OmS到65,535ms。

如下表所示,设定脉宽等于周期(使占空比为100%),输出连续接通。设定脉宽等于0(使占空比为0%), 输出断开。

脉宽、周期和PW功能的执行结果。

-同步更新:如果不需要改变时间基准,就可以进行同步更新。禾U用同步更新,波形特性的变化发生在周期

边沿,提供平滑转换。

-异步更新:PW的典型操作是当周期时间保持常数时变化脉冲宽度。所以,不需要改变时间基准。但是,

如果需要改变PTO/PW发生器的时间基准,就要使用异步更新。异步更新会造成PTO/PW功能被瞬时禁止,

和PW波形不同步。这会引起被控设备的振动。由于这个原因,建议采用PW同步更新。选择一个适合于所

有周期时间的时间基准。

提示:控制字节中的PW更新方式位(SM67.4或SM77.4用于指定更新方式。当PL&旨令执行时变化生效。如果改变了时间基准,会产生一个异步更新,而与PW更新方式位的状态无关。

使用SM来配置和控制PTO/PWM作

PLS旨令会从特殊存储器SM中读取数据,使程序按照其存储值控制PTO/PW发生器。SMB6控制PTO(或者PWM0 SMB7控制PTO1或者PWM1下表对用于控制PTO/PW操作的存储器给出了描述。您可以使用PTO/PW控制字节参考表作为一个快速参考,用其中的数值作为PTO/PW控制寄存器的值来实现需要的操作。

您可以通过修改SM存储区(包括控制字节),然后执行PLS指令来改变PTC或PW波形的特性。您可以在

任意时刻禁止PTO或者PW波形,方法为:首先将控制字节中的使能位(SM67.7或者SM77.7)清0,然后执行PLS指令。

PTO犬态字节中的空闲位(SM66.7或者SM76.7 )标志着脉冲串输出完成。另外,在脉冲串输出完成时,您可以执行一段中断服务程序。如果您使用多段操作,可以在整个包络表完成之后执行中断服务程序。

下列条件使SM66.4 (或SM76.4)或SM66.5 (或SM76.5)置位:

-如果周期增量使PTO&许多脉冲后产生非法周期值,会产生一个算术溢出错误,这会终止PTO^能并在状态字节中将增量计算错误位(SM66.4或者SM76.4)置1, PLO的输出变为由映象寄存器控制。

-如果要手动终止一个正在进行中的PTO包络,要把状态字节中的用户终止位(SM66.5或SM76.5)置1。

-当管线满时,如果试图装载管线,状态存储器中的PTO溢出位(SM66.6或者SM76.6)置1。如果想用该位检测序列的溢出,必须在检测到溢出后手动清除该位。当CPUn换至RUN模式时,该位被初始化为0。

提示:如果要装入新的脉冲数(SMD7或SMD82、脉冲宽度(SMW7或SMW80或周期(SMW或SMW78,应该在执行PLSW令前装入这些值和控制寄存器。如果要使用多段脉冲串操作,在使用PLS指令前也需要装入包络表的起始偏移量(SMW16或SMW178和包络表的值。

PTO/PW

PTO/PW

计算包络表的值

PTO/PW发生器的多段管线功能在许多应用中非常有用,尤其在步进电机控制中。

例如:您可以用带有脉冲包络的PTO来控制一台步进电机,来实现一个简单的加速、匀速和减速过程或

者一个由最多255段脉冲包络组成的复杂过程,而其中每一段包络都是加速、匀速或者减速操作。

下图示例给出的包络表值要求产生一个输出波形包括三段:步进电机加速(第一段);步进电机匀速(第

二段)和步进电机减速(第三段)。

对该例,假定需要4000个脉冲达到要求的电机转动数,启动和结束频率是2kHz,最大脉冲频率是10kHz。

由于包络表中的值是用周期表示的,而不是用频率,需要把给定的频率值转换成周期值。所以,启动和结束的脉冲周期为500卩s,最高频率的对应周期为100卩s。在输出包络的加速部分,要求在200个脉冲左右达到

最大脉冲频率。也假定包络的减速部分,在400个脉冲完成。

s高速脉冲计数器及PTO和PWM

s高速脉冲计数器及 P T O和P W M Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

高速脉冲计数器 高速计数器专用输入 高速计数器使用的输入 HSC0 , , HSC1 , , , HSC2 , , , HSC3 HSC4 , , HSC5 有些高速计数器和边缘中断的输入点赋值存在某些重叠。同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。例如,如果在模式2中使用HSC0,模式2使用和,则可用于边缘中断或用于HSC3。 如果所用的HSC0模式不使用输入,则该输入可用于HSC3或边缘中断。与此相似,如果所选的HSC0模式不使用,则该输入可用于边缘中断;如果所选HSC4模式不使用,则该输入可用于HSC5。 请注意HSC0的所有模式均使用,HSC4的所有模式均使用,因此当使用这些计数器时,这些输

(仅限正交计数器)。这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。 执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x(或4乘以输入时钟频率)。一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。 ** 率)。 定义控制字节 一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。每台高速计数器均有一个控制字节,允许完成以下作业: * 启用或禁止计数器 * 控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向 * 载入当前值 每台高速计数器都有一个32位初始值和一个32位预设值,初始值和预设值均为带符号的整数值。欲向高速计数器载入新的初始值和预设值,您必须设置包含初始值和/或预设值的控制字节及特殊内存字节。然后您必须执行HSC指令,将新数值传输至高速计数器。下表说明用于包含新当前值和预设值的特殊内存字节。

对外部脉冲计数系统的设计计数器课程设计(单片机)

湖南工业大学 课程设计 资料袋 理学学院(系、部)2012 ~ 2013 学年第 1 学期 课程名称单片机应用系统指导教师周玉职称副教授学生姓名张思远专业班级电子科学102 学号 题目对外部脉冲计数系统的设计 成绩起止日期2013 年01 月06 日~2013 年01 月10 日 目录清单 湖南工业大学 课程设计任务书 2012 —2013 学年第1 学期

理学院学院(系、部)电子科学专业102 班级 课程名称:单片机应用系统 设计题目:对外部脉冲计数系统的设计 完成期限:自2013 年01 月06 日至2013 年01 月10 日共 1 周 指导教师(签字):年月日 系(教研室)主任(签字):年月日

附件三 (单片机应用系统) 设计说明书 (题目) 对外部脉冲计数系统的设计 起止日期:2013 年01 月06 日至2013 年01 月10 日学生姓名张思远 班级电子科学102 学号 成绩 指导教师(签字) 电气与信息工程学院 2012年12 月10 日 一、设计任务: 1.1 外部脉冲自动计数,自动显示。 1.1.1设计一个255计数器:0-255计数,计满后自动清0,重 新计数(在数码管中显示)。 1.1.2设计一个50000计数器:0-50000计数,计满后自动清0, 重新计数(在数码管中显示)。 注:要求首先采用PROTEUS完成单片机最小系统的硬件电路 设计及仿真;程序仿真测试通过后,再下载到单片机实训 板上执行。

二、硬件设计介绍: ※STC89C52单片机; ※6位共阴或者共阴极数码管; ※外部晶振电路; ※ISP下载接口(In system program,在系统编程); ※DC+5V电源试配器(选配); ※ISP下载线(选配) ※6个PNP(NPN)三极管 ※12个碳膜电阻 三、硬件设计思路 方案一:五个1位7段数码管,无译码器 方案二:五个1位7段数码管,译码器 方案三:1个6位7段数码管,译码器 方案四:1个6位7段数码管,无译码器 考虑实际中外围设备、资金、单片机资源利用率、节省端口数量,可实行性以及连接方便等问题,采用6为数码管(共阳或者共阴极)由于实际中没买到6位的,采用2个三位数码管并接组合一个6位数码管形式;由于实际P口驱动能力有限,故采用6位三极管增大驱动能力,已便足以使得6位数码管亮度明显正常工作,增加6个电阻限流保护数码管不被烧坏。让数码管a-g7段分别接P1.6—P1.0,6位位选分别接P2.5—P2.0。 方法一:共阴极数码管 硬件图1.0所示:通过npn管放大后,段选高电平有效,位选低电平有效 图1.0共阴极数码管硬件原理图 方法二:共阳极数码管 原理图如图2.0:段选低电平有效,位选低电平有效(通过pnp管连接,不再是高电平有效了,由于特意此接法,共阳极共阴极数码管只是差别段选控制,为程序修改提供极大的方便之处,故程序只需要修改段选地址即可,实现共阳极共阴极互换) 图2.0共阳极数码管硬件原理图 三、程序设计思路: 由于设计是255和50000计数器,对于计数器工作模式二,TL最大值为255,可以实现对255计数,但是对于50000得另寻他路,为了建立不限制计数器模型,改进程序的可更改性可移植性可读行,对计数器模式二另TL1=0FFH(以

脉冲计数

实验九脉冲计数(定时/计数器实验) 1、实验目的:熟悉单片机内部定时/计数器功能,掌握初始化编程方法。 2、实验内容:把定时器0外部输入的脉冲进行计数,并送显示器显示 3、实验程序框图: 4、实验接线图:

5、实验步骤:P3.4 依次接T0~T7或单脉冲输出孔,执行程序,观察数码管上 计数脉冲的速度及个数。 6、思考:修改程序使显示器上可显示到999999个脉冲个数。 7、程序清单文件名:SW09.ASM;脉冲计数实验 ORG 0000H LJMP SE15 ORG 06E0H SE15: MOV SP,#53H MOV P2,#0FFH MOV A,#81H MOV DPTR,#0FF23H MOVX @DPTR,A ; 1 MOV TMOD,#05H MOV TH0,#00H MOV TL0,#00H SETB TR0 LO29: MOV R2,TH0 MOV R3,TL0 LCALL ZOY0 MOV R0,#79H MOV A,R6 LCALL PTDS MOV A,R5 LCALL PTDS MOV A,R4 LCALL PTDS LCALL SSEE SJMP LO29 ZOY0: CLR A MOV R4,A MOV R5,A MOV R6,A MOV R7,#10H LO30: CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A MOV A,R6 ADDC A,R6 DA A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A DJNZ R7,LO30 RET PTDS: MOV R1,A

s高速脉冲计数器及PTO和PWM

高速脉冲计数器 高速计数器专用输入 高速计数器使用的输入 HSC0 I0.0, I0.1, 0.2 HSC1 I0.6, I0.7, I1.0, I1.1 HSC2 I1.2, I1.3, I1.4, I1.5 HSC3 I0.1 HSC4 I0.3, I0.4, I0.5 HSC5 I0.4 有些高速计数器和边缘中断的输入点赋值存在某些重叠。同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。例如,如果在模式2中使用HSC0,模式2使用I0.0和I0.2,则I0.1可用于边缘中断或用于HSC3。 如果所用的HSC0模式不使用输入I0.1,则该输入可用于HSC3或边缘中断。与此相似,如果所选的HSC0模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5。 请注意HSC0的所有模式均使用I0.0,HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点绝不会用于其他用途。

四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计数器)。这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。 执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x(或4乘以输入时钟频率)。一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。 下表复位和启动输入的有效电平以及1x/4x控制位

**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。 定义控制字节 一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。每台高速计数器均有一个控制字节,允许完成以下作业: * 启用或禁止计数器 * 控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向 * 载入当前值 通过执行HSC指令可激活控制字节以及相关当前值和预设值检查。下表说明每个控制位。

单片机课程设计外部脉冲计数器

目录 摘要:单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。本课程设计的指导思想是控制单片机实现从0到99的计数功能,其结果显示在两位一体的共阳极数码管上。 关键词:脉冲计数器数码管单片机 本设计基于单片机技术原理,以单片机芯片STC89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个计数器,包括以下功能:输出脉冲,按下键就开始计数,并将数值显示在两位一体的共阳极数码管上。 1课题原理 PCB板上设置开始计数按键和清零按键,以上按键与89C52单片机的P1口连接,通过查询按键是否被按下来判断进行计数或者清零。若按下计数健,则单片机控制两位一体的共阳极数码管显示从00开始的数字,按下一次,则数字加一,一次类推;若按下清零键,则程序返回程序开始处,并且数码管显示00。

2 硬件及软件设计 2.1 硬件系统 2.1.1 硬件系统设计 此设计是在单片机最小系统的基础上进行开发和拓展,增加了按键电路和和数码管显示电路,由于单片机输出电流不足以驱动数码管发光,所以数码管需要驱动电路。我们采用了三极管对数码管电流进行放大,使电流大小达到要求值。 2.1.2 单元电路设计 基本框架如下图2.1 2.1基本框架

1.STC89C52芯片 STC89C52RC芯片包括: 8k字节 Flash,512字节RAM, 32位I/O口 线,看门狗定时器,两个数据指针, 三个16位定时器/计数器,一个6向 量2级中断结构,全双工串行口,片 内晶振及时钟电路。STC89C52RC芯片 可降至0Hz静态逻辑操作,时钟频率 0-80MHz,支持2种软件可选择节电 模式。空闲模式下,CPU停止工作, 允许RAM、定时器/计数器、串口、中 断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片 机一切工作停止,直到下一个中断或 硬件复位为止。8位微控制器8K字节 在系统可编程。芯片如图2.4所示。 图2.4 STC89C52芯片 2.按键电路 K1键为启动键,K2键为清零键,K3键为计数键,通过按钮的连接,实现开始、计数清零功能,连接电路如图2.5所示。 图2.5 按键电路

编码器的脉冲计数,高速计数器小归纳

我们一般采用高速输出信号控制步进电机和伺服电机做位置,角度和速度的控制,比如定位,要实现这个目的,我们要知道这几个条件:1、PLC高速输出需要晶体管输出,继电器属于机械动作,反应缓慢,而且易坏 2、以三菱PLC为例,高速输出口采用Y0 、Y1 3、高速输出指令常用的有 PLSY 脉冲输出 PLSR 带加减速 PLSV……可变速的脉冲输出 ZRN……原点回归 DRVI……相对定位 DRVA……绝对定位 4、脉冲结束标志位M8029 5、D8140 D8141 为Y0总输出脉冲数 6、在同一个程序里面Y0做为脉冲输出,程序可以存在一次,当需要多次使用的时候,可以采用变址V进行数据的切换,频率,脉冲在不同的动作模式中,改变数据

正对上述讲解的内容:我们用一个程序来表示若我们以后可能接触步进。伺服这一块,上述内容,大家一定要熟练掌握! 23、PLC编程实现编码器的脉冲计数 在高速计数器与编码器配合使用之前,我们首先要知道是单向计数,还是双向计数,需要记录记录的数据,需要多少个编码器,在PLC 中也需要多少个高速输入点,我们先要确认清楚。 当我们了解上面的问题以后,参照上题的寄存器分配表得知我们该选择什么高速计数器 如:现在需要测量升降机上升和下降的高度,那么我们需要采用双向编码器,即可加可减的,AB相编码器,PLC需要两个IO点,查表

得知,X0 X1为一路采用C251高速计数器那么我们可以这样编程,如图 开机即启动计数,上升时(方向),C251加计数 下降时(方向),C251减计数 我们要求编码器转动的数据达到多少时,就表示判断实际升降机到达的位置 注意:在整个程序中没有出现X0、X1这个两个软元件? 是因为C251为X0、X1的内置高速计数器,他们是一一对应的,只要见到c251,X0 X1就在里面了,当然,用了C251以后,X 0 、X1不能在程序里面再当做开关量使用了

单片机脉冲计数器程序汇编

单片机脉冲计数器 1、设计内容 用单片机实现对一路脉冲计数和显示的功能。硬件包括单片机最小系统、LED显示、控制按钮;软件实现检测到显示 2、要求 计数范围0~2000; 脉冲输入有光电隔离整形, 有清零按钮 程序如下: ORG 0000H LJMP MAIN ORG 0003H LJMP 0100H ORG 0013H LJMP 0150H ORG 0050H MAIN: CLR A MOV 30H , A ;初始化缓存区 MOV 31H , A MOV 32H , A MOV 33H , A MOV R6 , A MOV R7 , A SETB EA SETB EX0 SETB EX1 SETB IT0 SETB IT1 SETB PX1 NEXT1: ACALL HEXTOBCDD ;调用数制转换子程序 ACALL DISPLAY ;调用显示子程序 LJMP NEXT1 ORG 0100H ;中断0服务程序 MOV A , R7 ADD A , #1 MOV R7, A MOV A , R6 ADDC A , #0 MOV R6 , A CJNE R6 , #07H , NEXT CLR A MOV R6 , A MOV R7 , A NEXT: RETI

ORG 0150H ;中断1服务程序 CLR A MOV R6 , A MOV R7 , A RETI ORG 0200H HEXTOBCDD:MOV A , R6 ;由十六进制转化为十进制PUSH ACC MOV A , R7 PUSH ACC MOV A , R2 PUSH ACC CLR A MOV R3 , A MOV R4 , A MOV R5 , A MOV R2 , #10H HB3: MOV A , R7 ;将十六进制中最高位移入进位位中RLC A MOV R7 , A MOV A , R6 RLC A MOV R6 , A MOV A , R5 ;每位数加上本身相当于将这个数乘以2 ADDC A , R5 DA A MOV R5 , A MOV A , R4 ADDC A , R4 DA A ;十进制调整 MOV R4 , A MOV A , R3 ADDC A , R3 DJNZ R2 , HB3 POP ACC MOV R2 , A POP ACC MOV R7 , A POP ACC MOV R6 , A RET ORG 0250H DISPLAY: MOV R0 , #30H MOV A , R5

脉冲计数器分类及作用

成像硬件用于获得清晰有效的菌落图像,以便分析计数。现今的成像硬件有拍照成像的、扫描成像的。由摄像头拍照成像的优点是:成像速度快,能确保在0.5秒内获得菌落图像。由单反相机、卡片机拍照成像的优点是:能自动对焦、且像素分辨率一般更高,但其成像需要3~4秒的时间。 然而,拍照成像的致命弱点是:成像环境中的光线强度,无论是暗视野,还是背光,想要做到图像中心与边缘保持完全一致,相对来说比较困难。从而引起平皿上亮度的不一致。针对环境光干扰成像方面,通过对仪器照明系统进行精密的设计,上下光源采用了宽光带的LED柔光系统,并结合“悬浮式暗视野”成像系统,不仅能够消除玻璃培养皿的折射光斑,而且通过改变光比,使得菌落表面的皱折、凹陷、边缘的锯齿更富立体感。 扫描成像与在灯箱中营造均匀面光源不同,是将线光源通过移动变成面光源的,光线强度相对比较均匀,其均匀度通常比拍照灯箱的面光源要高一个数量级,从成像硬件的上解决了菌落目标的亮度不匀问题,但扫描只是平面的效果,不能展现培养基表层和深层的细微菌落,且不能展现菌落颜色等多方面的情况,对于观察分析而言构成了一定难度。随着科技发展,高清晰的CMOS、CCD的涌现加上高清晰的镜头,对菌落色彩的还原性、清晰度等都很高,能够解决某些复杂菌落计数问题。对于这类的产品越来越受到科研单位、检测部门、大专院校等的喜爱。 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解相关仪器仪表产品的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城城https://www.doczj.com/doc/fd7045103.html,/

单片机实验 脉冲计数和电脑时钟程序

南昌航空大学实验报告 二0一一年九月二十九日 课程名称:单片微型机实验名称:脉冲计数和电脑时钟程序 班级: 080611 学生姓名:学号: 08061108 指导教师评定:签名: 一、实验目的 1、熟悉8031定时/计数功能,掌握定时/计数初始化编程方法; 2、熟悉MCS—51定时器、串行口和中断初始化编程方法,了解定时器应用在实时控制中程序的设计技巧; 3、编写程序,从DVCC系列单片机实验仪键盘上输入时间初值,用定时器产生0.1S定时中断,对时钟计数器计数,并将数值实时地送数码管显示。 二、实验内容及要求 1、脉冲计数 对定时器0外部输入的脉冲进行计数,并送显示器显示。程序框图如下: 图1 二进制转换子程序 2、电脑时钟程序程序 程序框图如下:

图2 定时中断服务程序 三、实验步骤及操作结果 1、脉冲计数程序 (1) 当DVCC 单片机仿真实验系统独立工作时 1) 把8032CPU 的P3.4插孔接T0—T7任一根信号线或单脉冲输出空“SP ”。 2)用连续方式从起始地址02A0H 开始运行程序(按02A0后按EXEC 键)。 3)观察数码管显示的内容应为脉冲个数。 (2) 脉冲计数程序(源文件名:Cont .Asm )。汇编程序代码如下: ORG 02A0H CONT: MOV SP,#53H MOV TMOD,#05H ;初始化定时/计数器 MOV TH0,#00H MOV TL0,#00H SETB TR0 ;允许定时/计数中断 CONT1: MOV R2,TH0 ;取计数值 MOV R3,TL0 LCALL CONT2 ;调二转十进制子程序 MOV R0,#79H MOV A,R6 LCALL PWOR MOV A,R5 LCALL PWOR MOV A,R4 LCALL PWOR LCALL DISP ;调显示子程序 SJMP CONT1 ;循环 CONT2: CLR A ;清R4、R5、R6 MOV R4,A MOV R5,A MOV R6,A MOV R7,#10H CONT3: CLR C ;R2、R3左移,移出的位送CY MOV A,R3 RLC A

计数器工作原理

计数器工作原理及应用 除了计数功能外,计数器产品还有一些附加功能,如异步复位、预置数(注意,有同步预置数和异步预置数两种。前者受时钟脉冲控制,后者不受时钟脉冲控制)、保持(注意,有保持进位和不保持进位两种)。虽然计数器产品一般只有二进制和十进制两种,有了这些附加功能,我们就可以方便地用我们可以得到的计数器来构成任意进制的计数器。下面我们举两个例子。在这两个例子中,我们分别用同步十进制加法计数器74LS160构成一个六进制计数器和一个一百进制计数器。 因为六进制计数器的有效状态有六个,而十进制计数器的有效状态有十个,所以用十进制计数器构成六进制计数器时,我们只需保留十进制计数器的六个状态即可。74LS160的十个有效状态是BCD编码的,即0000、0001、0010、0011、0100、0101、0110、0111、1000、1001[图5-1]。 图5-1 我们保留哪六个状态呢?理论上,我们保留哪六个状态都行。然而,为了使电路最简单,保留哪六个状态还是有一点讲究的。一般情况下,我们总是保留0000和1001两个状态。因为74LS160从100 1变化到0000时,将在进位输出端产生一个进位脉冲,所以我们保留了0000和1001这两个状态后,我们就可以利用74LS160的进位输出端作为六进制计数器的进位输出端了。于是,六进制计数器的状态循环可以是0000、0001、0010、0011、0100和1001,也可以是0000、0101、0110、0111、1000和1001。我们不妨采用0000、0001、0010、0011、0100和1001这六个状态。 如何让74LS160从0100状态跳到1001状态呢?我们用一个混合逻辑与非门构成一个译码器[图5. 3.37b],当74LS160的状态为0100时,与非门输出低电平,这个低电平使74LS160工作在预置数状态,当下一个时钟脉冲到来时,由于等于1001,74LS160就会预置成1001,从而我们实现了状态跳跃。

高速计数器

5.3 高速计数器 前面讲的计数器指令的计数速度受扫描周期的影响,对比CPU扫描频率高的脉冲输入,就不能满足控制要求了。高速计数器HSC用来累计比PLC扫描频率高得多的脉冲输入,利用产生的中断事件完成预定的操作。 一、高速计数器介绍 S7-200系列PLC设计了高速计数功能(HSC),其计数自动进行不受扫描周期的影响,最高计数频率取决于CPU的类型,CPU22x系列最高计数频率为30KHz。高速计数器在程序中使用时的地址编号用HC n来表示(在非正式程序中有时用HSC n),HC (HSC)表示编程元件名称为高速计数器,n为编号。 表5-3 高速计数器的数量与编号表 1.高速计数器输入端的连接 每个高速计数器对它所支持的时钟、方向控制、复位和启动都有专用的输入点,通过中断控制完成预定的操作。每个高速计数器专用输入点如表5-4所示。 注意:同一个输入端不能用于两种不同的功能。但是高速计数器当前模式未使用的输入端均可用于其他用途,如作为中断输入端或作为数字量输入端。每个高速计数器的3种中断的优先级由高到低,各个高速计数器引起的中断事件如表5-5所示。

S7-200系列PLC高速计数器HSC0~HSC5可以分别定义为四种工作类型:带有内部方向控制的单相计数器;带有外部方向控制的单相计数器;带有增/减计数脉冲输入的双相计数器;A/B相正交计数器。 根据有无复位输入和启动输入,每种高速计数器类型可以设定为三种工作状态:无复位且无启动输入;有复位但无启动输入;有复位且有启动输入。 HSC0~HSC5可以根据外部输入端的不同配置12种模式(模式0~模式11),高速计数器的工作模式见表6-4。 表6-5 高速计数器的控制字节(位)

脉冲信号发生器与计数器

中南林业科技大学涉外学院 认识实习报告 名称:脉冲信号发生器与计数器 姓名学号: 系:理工系专业:电子信息工程班级:实习时间:实习地点:

目录 一、题目 二、任务和要求 三、内容 (1)如何用仪表测量 (2)如何焊接 (3)如何调试 四、结论 五、体会和收获

一、题目脉冲信号发生其与计数器 二、任务和要求 1:焊接电路板 2:装配电阻、安装短路线、装配芯片、装配按键S、装配电容、装配发光二极管、安装电源插座、测试 三、内容 (1)安装好后,目测检查,是否焊接好了。插入电源线,电源线额另一端接电源,一定不要接错了,印刷板上标有+的一端接电源+5V,另一端接 地。千万注意,电源不要接错了。打开电源,测试电源电压,测试芯片 上各脚电压。按下按键,试着短按和长按,观察现象。测试各发光二极 管(有亮的也有不亮的都测)的电压。短按时,每次产生一个脉冲,观 察到由发光二极管显示的二进制数加一。长按时,产生连续脉冲,观察 到由发光二极管显示的二进制数连续累加。 (2)加热焊件;移入焊锡;焊锡融化后,移开焊锡;移开电烙铁。注意掌握好时间,焊接好后,剪去焊盘外的导线 (3)打开电源,测试电源电压,测试芯片上各脚电压。按下按键,试着短按和长按,观察现象 四、结论 利用集成定时器(芯片 NE555)产生信号,当按键被单次单次地按下时,产生一个一个的单脉冲信号;当按键按下不动时,产生连续脉冲信号。可利用集成技术器(芯片4024)计数。其状态反映脉冲的个数。利用发光二级管显示已经计数的脉冲数,其中74LS04是驱动电路。 五、体会和收获 经过这次实习,了解到了如何焊接电路板、焊接电路板所需注意的事项、认识各种原配件和如何检测焊成后的电路板,同时培养了自己的动手能力和对电路这门课程的认知

51单片机计数程序

/**************程序说明********************* 硬件说明只需要将15脚接口接入外部的脉冲信号,15脚为定时器T1的外部信号输入引脚 通过定时器T0定时指定的时间来测取脉冲的个数并在1602液晶上显示出来 假设定时1s则数据变成为信号的频率 *************************************************** *****/ #include #include //定时器0负责定时30s 定时器1负责计数功能 #define uint unsigned int #define uchar unsigned char sbit RS=P2^6; //液晶的电路定义 sbit E=P2^5; unsigned char table[3]; unsigned int t0;

void delay_ms(uint z) //毫秒级延时 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /******液晶部分子程序*************************/ void write_com(unsigned char com) { //操作时序 RS=0; P0=com; delay_ms(5); E=1; delay_ms(5); E=0; } void write_data(unsigned char shuju) { //操作时序

RS=1; P0=shuju; delay_ms(5); E=1; delay_ms(5); E=0; } void LCDintial() { delay_ms(5); E=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); } /**********定时器初始化程序***************/ void T0T1_init() { EA=1;

台达eh2高速计数器的使用

1. 以脉冲输出来控制步进及伺服定位的应用中,脉冲+方向型式、正反转型式、 AB相型式等三种型式,为较常见的脉冲型式。以下为三种脉冲信号的型式:2. 脉冲+方向型式:即为1相1输出脉冲型式。Pulse(或CLK)为运转脉冲输入信号,DIR为控制步进或伺服电机的运转方向。如下所示: 正反转型式(CW/CCW):即为1相2输出脉冲型式。CW为正转脉冲信号,CCW为反转脉冲信号。如下所示: AB相型式:即为2相2输出脉冲型式。A与B相两信号相位角相差90°,为正交脉冲信号。如下所示: 以上三种为一般步进或伺服控制器所应用的输入及输出的脉冲型式,因此于高速计数器所支持的脉冲型式,也以此三种信号模式为主要输入信号的规格。 台达EH2系列的plc的高速计数器有4个HHSC0~3,计数的模式也得进行选择默认的事进行2倍频 1.选用一相一输入c241(HHSC0),J监视X0口的计数,X0口通过M1241(flag 标志位)进行加减计数。 2.选用1相两输入C246(HHSC0),X0口作为加计数,X1作为减计数,计数器的启动和复位可以用输入口X3X4,也可以用特殊辅助寄存器M1272M1273作为启动和复位,也可以通过高速计数器控制启动复位的寄存器,M1264和M1265全为一,关闭外部输入口的启动复位功能,让其作为普通的输入口使用。 3.选用2相2输入同一相2输入很相似但是存在三倍频和四倍频

2. 将步进或伺服控制器编码器反馈的脉冲信号提供给高速计数器进行计数的工作,可得到实际脉冲数,此脉冲数可应用在脉冲输出比较位置是否到达,还可进行脉冲计数到达判断的控制,以提升位置控制的精确度。 RJ11 RJ11接口和RJ45接口很类似,但只有4根针脚(RJ45为8根)。在计算机系统中,RJ11主要用来联接modem调制解调器。 RJ11通常指的是6个位置(6针)模块化的插孔或插头。这种接插件没有国际化的标准并且在通用综合布线标准中提及。而且,这个名称往往也用于4针版本的模块化接插件,从而引起混乱。

实实验二 脉冲产生电路及计数器的使用1

实验二脉冲产生电路及计数器的使用 一、实验目的 1、掌握使用门电路、555定时器构成脉冲信号产生电路的方法。 2、掌握中规模集成计数器的使用及功能测试方法。 二、实验设备与器件 1、数字电路实验箱。 2、集成门电路:CC4011×1 3、电阻器: 100Ω×1、1MΩ×2、2MΩ×1、 4、电容器:0.01μF×1、0.1μF×1、1μF×1 5、555定时器×1 6、集成计数器:CC40192(74LS192)×2 16 15 14 13 12 11 10 9 V D D D0 CR BO CO LD D2 D3 CC40192(74LS192) D1Q1Q0 CP D CP U Q2 Q3V S S 1 2 3 4 5 6 7 8 图中:CP U——加法计数时钟脉冲输入端, CP D——减法计数时钟脉冲输入端, LD——置数端,CR——清除端, CO——非同步进位输出端,

BO——非同步借位输出端, D0、D1、D2、D3——数据输入端, Q0、Q1、Q2、Q3——数据输出端。 CC40192(74LS192)的功能如下表一所示: 表一 三、实验过程 1、依图一所示带RC延迟电路环形振荡器原理图,在数字电路实验箱上,用1片CC4011、100Ω及2MΩ电阻各1个、0.1μF电容器1个接成脉冲产生电路的实际电路。 图一 图一电路中,R为2MΩ电阻,R S为100Ω电阻,C为0.1μF电容器。电路利用电容C的充放电过程,控制d点的电位,从而控制非门的自动启

闭,形成多谐振荡。改变R和C可改变电路输出的振荡周期T=2.2RC。 (1)请画出带RC延迟电路环形振荡器的实际接线图。 (2)电路是否一次接线成功且实现应有功能?若不是,请将遇到的情况记下,并说明解决的方法。

单片机方波脉冲计数控制 设计说明书

桂林电子科技大学微机综合设计 设 计 报 告 指导老师:吴兆华 学生:fdb 学号:1000150310

目录 一、设计题目 (2) 二、设计内容与要求 (2) 三、设计目的和意义 (2) 四、设计任务分析 (2) 五、系统硬件电路 (3) 5.1 电路原理图绘制 (7) 5.1.1 电路图绘制要点 (7) 5.1.2 硬件电路制作 (8) 5.2 硬件电路说明 (8) 5.2.1 单片机基本知识 (8) 5.2.2 AT89S51单片机介绍 (11) 5.2.3最小系统控制部分 (14) 5.2.4 数码管显示电路部分 (17) 六、软件设计 (20) 6.1程序流程图 (20) 6.2程序源代码 (22) 八、调试过程 (27) 8.1 硬件调试 (27) 8.1.1 静态调试 (27) 8.1.2 动态调试 (27) 8.2 软件调试 (29) 8.3 调试收获与改进意见 (29) 九、设计总结 (30) 十、参考文献 (31)

一、设计题目 用8031单片机控制可测方波1~100Hz,并显示每分钟计数的脉冲。 二、设计内容与要求 设计方波脉冲控制显示系统,用51单片机控制输出方波输出,频率范围为1~100Hz,并用数码管显示每分钟计数的脉冲数和当前频率,用两个按键分别控制频率的增减,同时用一个复位键,可以快速回到起始状态。 三、设计目的和意义 1、通过方波脉冲控制系统的设计,将单片机原理课上所学的知识融会贯通、加深理解。培养独立设计、制作和调试单片机应用系统的能力,熟悉单片机应用系统的软硬件调试方法和系统的设计开发过程,为今后的工作实践活动夯实基础。 2、通过方波脉冲计数控制系统的设计,掌握51系列单片机的内部定时/计数器的功能和使用方法;掌握单片机外部中断的应用和程序的编程方法;掌握数码管的使用和编程方法。通过设计方案分析、选择和设计,设计并搭制硬件电路,编写控制程序等一系列工作,掌握单片机应用的基本方法,更重要的是学会一种科学的解决问题的逻辑思维,和完成任务的方法。 3、培养一个解决困难问题的积极心态,为今后在工作上奠定坚实的基础。 四、设计任务分析 设计题目要求用单片机控制可测方波脉冲1~100Hz,并显示每分钟计数的脉冲数。由要求可知道,任务包括方波的产生和方波脉冲数的显示两个部分。方波由单片机内部定时器来产生,通过改变其定时初值来改变方波的频率,在硬件电路中可利用按键来控制频率的增减。方波的波形利用示波器来观察。 由此,可有几个方案来实现题目的要求。 方案一:51单片机最小系统,外接上一个数码管显示电路用以显示每分钟的脉冲数。数码管的断码选择端直接与单片机的P0口连接,位码选择端与P2口连接。利用改变定时初值的方式来改变方波频率。这个方案的优点是硬件电路简单,节省元器件,程序编写容易。但是缺点也明显,只用一个数码管,无法显示当前的脉冲频率,而且无法用硬件实现频率的+1,-1的变化。虽然实现了题目的基本功能,但是功能简单有限,也就达不到课程设计的目的了。以下是方案一的电路图:

单片机课程设计(24秒篮球计数器)

1.引言 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。 单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。 数字钟是采用数字电路实现对时,分,秒。数字显示的计时装置,广泛用于比赛,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 2 设计要求 1、具有24s计时功能。 2、设置外部操作开关,控制计时器的直接清零、启动和暂停 /连续功能。 3、计时器为24秒递减时,计时间隔为1秒。 4、计时器递减到零时,数码显示器不能灭灯,同时发出光电报警信号。 5、有直接清零然后恢复到24秒,准备重新开始计数。 学生在教师指导下,综合运用所学知识完成基于单片机的篮球比赛24秒计时器设计。要求设计一个24秒计时电路,并具有时间显示的功能。 要求: 1、设置外部操作开关,控制计数器的直接清零、启动和暂停/连续计时。

2、要求计时电路递减计时,每隔1秒钟,计时器减1。 3、当计时器减到0时,显示器上显示00,同时发出光电报警信号。 3设计思路: 选用AT89C51作为主控芯片,晶振是6KHz,机械周期为1ms,所以循环10次为1s。P0口作为段码输出,P2.0、P2.1作为位控,高电平有效。数码管是液晶显示,采用动态显示,两个串行口作为中断入口,高电平有效,启动T0定时器/计数器进行计数,低电平有效。图2.2.1是系统硬件设计电路图一。 时间设置完后,启动定时器T0开始定时计数。计时采用倒计时,比如:设置的时间为24秒钟,则在LED上显示24两位数。定时T0计数24秒后中断返回,继续定时计数下一个24秒;同时则在2位LED显示器上显示,表示时间已经过去1秒钟,即为23秒。这样一直持续下去。知道变为“00”时表示赛程结束。如果比赛中裁判叫停,则只要按下键,即可暂停计时。

单片机实验设计脉冲计数实验

实验八脉冲计数实验 一、实验目的: (1)掌握定时器/计数器的计数工作方式; (2)掌握用定时器/计数器实现脉冲计数的方法; (3)掌握用Keil实现软件调试的方法; (4)掌握用Proteus实现电路设计,程序设计和仿真的方法。 二、实验内容: 定时器0外部输入端(P3.4)和定时器1外部输入端(P3.5)作为计数脉冲输入端,利用按钮手控产生单脉冲信号作为计数输入脉冲,编写程序控制,每输入一个(5个)脉冲,工作寄存器R0(R1)的内容加1,同时将R0(R1)的内容送到两位LED数码管中显示出来,晶振频率6MHZ。 三、主要器件的型号: 四、实验参考电路: P1口接两位数码管显示工作寄存器R0的内容,P2口接两位数码管显示工作寄存器R0的内容,两只按钮分别接P3.2(外部中断0中断输入端)和P3.3(外部中断1中断输入端)。实验电路如图:

五、实验参考程序: ORG 0000H LJMP MAIN 指向主程序; ORG 000BH 定时器/计数器0的入口地址; LJMP T0C 指向中断服务程序; ORG 001BH 定时器/计数器1的入口地址; LJMP T1C 指向中断服务程序; ORG 0030H MAIN: MOV R0,#00H 清零; MOV R1,#00H MOV P1,#00H MOV P2,#00H MOV TMOD,#66H 置计数器0,计数器1为方式2; MOV TH0,#0FFH 置1次计数初值; MOV TL0,#0FFH MOV TH1,#0FBH 置5次计数初值; MOV TL1,#0FBH SETB EA 开中断; SETB ET0 SETB ET1 SETB TR0 启动计数器0; SETB TR1 启动计数器1; SJMP $

(完整word版)计数器的原理.doc

计数器的原理 计数器是数字电路中广泛使用的逻辑部件,是时序逻辑电路中最重要的逻辑部件之一。 计数器除用于对输入脉冲的个数进行计数外,还可以用于分频、定时、产生节拍脉冲等。计数器 按计数脉冲的作用方式分类,有同步计数器和异步计数器;按功能分类,有加法计数器、 减法计数器和既具有加法又有减法的可逆计数器;按计数进制的不同,又可分为二进制计数器、 十进制计数器和任意进制计数器。 一、计数器的工作原理 1、二进制计数器 ( 1)异步二进制加法计数器图1所示为用JK 触发器组成的 4 位异步二进制加法计 数器逻辑图。图中 4 个触发器F0~F3均处于计数工作状态。计数脉冲从最低位触发器F0的CP 端输入,每输入一个计数脉冲,F0的状态改变一次。低位触发器的Q 端与高位触发器的 CP 端相连。每当低位触发器的状态由 1 变 0 时,即输出一负跳变脉冲时,高位触发器翻转。 各触发器置0 端 R D并联,作为清0 端,清 0 后,使触发器初态为0000。当第一个计数脉冲 输入后,脉冲后沿使F0的 Q0由 0 变 1, F1、 F2、 F3均保持 0 态,计数器的状态为0001;当 图 1 4 位异步二进制加法计数器 第二个计数脉冲输入后,Q0由 1 变为 0,但 Q0的这个负跳变加至F1的 CP 端,使 Q1由 0 变为 1,而此时 F3 2 仍保持 0 状态,计数器的状态为0010 0 、 F 。依此类推,对于 F 来说,每 来一个计数脉冲后沿,Q 的状态就改变,而对于F、F、F 来说,则要看前一位输出端Q 0 1 2 3 是否从 1 跳到 0,即后沿到来时,其输出端的状态才改变,否则Q1、 Q2、Q3端的状态同前 一个状态一样。这样在第15 个计数脉冲输入后,计数器的状态为1111,第 16 个计数脉冲 输入,计数器恢复为0000。 由上述分析可知,一个 4 位二进制加法计数器有24=16 种状态,每经过十六个计数脉冲, 计数器的状态就循环一次。通常把计数器的状态数称之为计数器的进制数(或称计数器的模),因此, 4 位二进制计数器也可称之为 1 位十六进制(模16)计数器。表 1 所示为 4 位二进制加法计数器的状态表。计数脉冲和各触发器输出端的波形如图 2 所示。 图 2 直观地反映出最低位触发器Q0在 CP 脉冲后沿触发,而各高位触发器又是在相邻 低位触发器输出波形的后沿触发。从图中还可以看出每经过一级触发器,脉冲波形的周期就 增加 1 倍,即频率降低一半,则从Q0引出的脉冲对计数脉冲为两(21)分频,从Q1引出的 脉冲对计数脉冲为四(22)分频,依此类推,从n 位触发器输出端Q n引出的脉冲对计数脉 冲为 2n分频,因此,计数器可以用于分频电路。 对异步二进制加法计数器的特点归纳如下:

单片机的定时及计数器实验-脉冲计数器

实验六单片机定时、计数器实验2——脉冲计数器 一、实验目的 1.AT89C51有两个定时/计数器,本实验中,定时/计数器1(T1)作定时器用,定时1s;定时/计数器0(T0)作计数器用。被计数的外部输入脉冲信号从单片机的P3.4(T0)接入,单片机将在1s内对脉冲计数并送四位数码管实时显示,最大计数值为0FFFFH。 2.用proteus设计、仿真基于AT89C51单片机的脉冲计数器。 3.学会使用VSM虚拟计数/计时器。 二、电路设计 1.从PROTEUS库中选取元件 ①AT89C51:单片机; ②RES:电阻; ③7SEG-BCD- GRN:七段BCD绿色数码管; ④CAP、CAP-ELEC:电容、电解电容; ⑤CRYSTAL:晶振; SEG-COM- GRN为带段译码器的数码管,其引脚逻辑状态如图所示。

对着显示的正方向,从左到右各引脚的权码为8、4、2、1。 2.放置元器件 3.放置电源和地 4.连线 5.元器件属性设置 6.电气检测 7.虚拟检测仪器 (1)VSM虚拟示波器 单击小工具栏中的按钮,在对象选择器列表中单击COUNTER(计 数/计时器),打开其属性编辑框,单击运行模式的下拉菜单,如图所示,可选择计时、频率、计数模式,当前设置其为频率计工作方式。 (2)数字时钟DCLOCK 单击按钮,在对象选择器中选择DCLOCK(数字时钟)。在需要添加信 号的线或终端单击即可完成添加DCLOCK输入信号。当前信号设置为DIGITAL型的时钟CLOCK,频率为50K。 三、源程序设计、生成目标代码文件 1.流程图 2.源程序设计 通过菜单“sourc e→Add/Remove Source Files…”新建源程序文件:DZC36.ASM。 通过菜单“sourc e→DZC36.ASM”,打开PROTEUS提供的文本编辑器SRCEDIT,在其中编辑源程序。 程序编辑好后,单击按钮存入文件DZC32.ASM。 3.源程序编译汇编、生成目标代码文件 通过菜单“sourc e→Build All”编译汇编源程序,生成目标代码文件。

相关主题
文本预览
相关文档 最新文档