CN112904090A - 一种信号持续时间采集方法 - Google Patents

一种信号持续时间采集方法 Download PDF

Info

Publication number
CN112904090A
CN112904090A CN202110093107.5A CN202110093107A CN112904090A CN 112904090 A CN112904090 A CN 112904090A CN 202110093107 A CN202110093107 A CN 202110093107A CN 112904090 A CN112904090 A CN 112904090A
Authority
CN
China
Prior art keywords
signal
level
value
external
interruption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110093107.5A
Other languages
English (en)
Inventor
刘江
孙钱森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN202110093107.5A priority Critical patent/CN112904090A/zh
Publication of CN112904090A publication Critical patent/CN112904090A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R29/00Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
    • G01R29/02Measuring characteristics of individual pulses, e.g. deviation from pulse flatness, rise time or duration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof

Abstract

一种信号持续时间采集方法,包括如下步骤:将单片机配置定时器功能,设定时钟频率F,设定定时时间间隔t;当待采集信号发生首次电平变化时,触发并进入外部中断,对外部中断次数值Nc作加1处理,读取此时定时器计数寄存器值Ta,并将中断计时标志位置为真;当电平持续期间程序进入定时中断时,若计时标志位为真,对定时中断次数值Ts作加1处理;当待采集信号发生电平变化触发进入外部中断次数值Nc到达预设值时,读取此时定时器计数寄存器值Tb;计算得出信号持续时间Tc_value=t*Ts+(Tb‑Ta)*(1/F)。本发明的一种信号持续时间采集方法成本低,对芯片资源要求少,能精确采集到需采集的信号时间,程序通用性好,移植性和一致性好。

Description

一种信号持续时间采集方法
技术领域
本发明属于通信电子领域,尤其涉及一种信号持续时间采集方法。
背景技术
当在单片机应用时检测外部相关电平信号的时间时,通常使用单片机自身的捕获功能,才准确的捕捉到此电平信号时间。但通常捕获功能是于定时器共用寄存器,当使用定时器功能时,占用此定时器寄存器,此时无法使用单片机的捕获功能来捕获电平时间。在一些较为低端或低成本单片机的芯片资源中没有此捕获功能,无法准确的捕获到需采集的电平时间,从而影响其他相关功能实现。
通常可利用单片机的定时器,使其设置固定的计时时间,以定时触发定时中断,可在定时中断(固定时间,即固定的采样间隔)中对此电平状态进行判断计时,但此种方式采集判断到的电平时间最大会有两个检测判断间隔时间误差,导致无法准确的采集到此电平时间。
例如电机进行闭环控制时,电机反馈的转速信号为一个占空比为50%的PWM信号,其周期与电机转速有一定关系,故需准确采集电机转速才可更加准确的进行电机转速控制。若当采集误差较大时,电机转速就会无法很好达到预定转速,导致控制效果差。
发明内容
为解决上述现有技术中的问题,本发明提供了一种信号持续时间采集方法,该发明提供了一种对数字信号(波形或电平)持续时间的精准采集方案,使用定时器、外部中断等单片机基本功能即可实现信号时间准确采集,解决了在单片机外设功能缺失或资源紧张情况下,利用常规方式无法对波形或电平时间进行精确采集的问题,从而低成本的实现信号时间的精准采集。
为实现上述目的,本发明的一种信号持续时间采集方法的具体技术方案如下:
一种信号持续时间采集方法,包括如下步骤:
将单片机配置定时器功能,设定时钟频率F,设定定时时间间隔t;
当待采集信号发生首次电平变化时,触发并进入外部中断,对外部中断次数值Nc作加1处理,读取此时定时器计数寄存器值Ta,并将中断计时标志位置为真;
当电平持续期间程序进入定时中断时,若计时标志位为真,对定时中断次数值Ts作加1处理;
当待采集信号发生电平变化触发进入外部中断次数值Nc到达预设值时,读取此时定时器计数寄存器值Tb;
计算得出信号持续时间Tc_value=t*Ts+(Tb-Ta)*(1/F)。
进一步,所述方法具体包括:
当外部中断次数Nc=2时,完成一次电平持续时间采集。
进一步,所述方法具体包括:
当外部中断次数Nc≥2时,完成一次波形持续时间采集。
进一步,所述方法具体包括:
若判定外部中断电平为高电平,将上升沿时标志位置为真,则先检测一个上升沿,再检测到一个下降沿,采集两个边沿之间的高电平持续时间。
进一步,所述方法具体包括:
若判定外部中断电平为低电平,将下降沿时标志位置为真,则先检测一个下降沿,再检测到一个上升沿,采集两个边沿之间的低电平持续时间。
进一步,所述方法具体包括:
设定定时器计数寄存器初始值T,设定定时器计数寄存器最大值Tmax,则t=Tmax-T。
进一步,所述方法具体包括:
设置外部中断为单边沿触发或双边沿触发。
进一步,所述方法具体包括:
设置外部中断优先级大于等于定时中断优先级,并允许外部中断嵌套在定时中断中。
进一步,所述方法具体包括:
在将单片机配置定时器功能之前,将外部信号采集口设置在单片机的外部中断端口。
本发明的一种信号持续时间采集方法具有以下优点:成本低,对芯片资源要求少,能精确采集到需采集的信号时间,程序通用性好,移植性和一致性好。
附图说明
图1为本发明的单片机和外部信号设置示意图;
图2为本发明的信号采集流程示意图;
图3为本发明的采集一次高电平流程示意图;
图4为本发明的信号采集中断设置流程示意图;
图5为本发明的时间计算数据流程示意图。
具体实施方式
为了更好地了解本发明的目的、结构及功能,下面结合附图,对本发明一种信号持续时间采集方法做进一步详细的描述。
本发明的信号持续时间采集方法将外部信号采集口设置在单片机的外部中断端口,通过单片机配置定时器功能,设置定时中断,将外部中断的优先级设置较高且大于等于其他中断的优先级,以保证采集数据更加准确,并且允许外部中断可以嵌套在其他中断中,以避免程序在其他中断中运行时间较长,导致不能及时进入外部中断,影响采样时间准确度。
设定定时器时钟频率F、定时时间间隔t、计数初始值T,定时器的计数寄存器从定时计数初值T开始向上累加,当计数寄存器值超过寄存器最大计数值时Tmax,定时计数值寄存器发生溢出时并触发定时中断,具体的,定时器的计数值从T到Tmax为一个定时周期t,即t=Tmax-T。
具体的,可采集信号电平持续时间:设置外部中断功能为双边沿触发,当待采集信号首次发生电平变化时,触发并进入外部中断,读取并保存此时定时器计数寄存器值Ta,并将中断计时标志位Flag置为真;
当电平持续期间程序进入定时中断,在定时中断中若此计时标志位Flag为真时,则对检测期间定时中断次数值Ts进行加1处理;
当电平再次发生变化时,触发外部中断,读取并保存此时定时器的计数寄存器值Tb,一次电平持续时间采集完成;
当Ts=0时,即说明两次触发的外部中断时间不大于最小的定时间隔t,则此电平持续时间Tc_value=[(Tmax-Ta)+(Ta-T)+t*(Ts-1)]*(1/F),即Tc_value=(Tb-Ta)*(1/F);
当Ts>0时,则此电平持续时间Tc_value=[(Tmax-Ta)+(Ta-T)+t*(Ts-1)]*(1/F),即Tc_value=t*Ts+(Tb-Ta)*(1/F)。
进一步,判断外部中断电平,若外部中断的电平为高电平,将IO_UP_Flag置为真,则可采集一次高电平持续时间:先检测一个上升沿,再检测到一个下降沿,两个边沿之间的时间即为高电平持续时间,若为低电平则不去处理,等待下次外部中断触发;
若外部中断的电平为低电平,将IO_DOWN_Flag置为真,则可采集一次低电平持续时间:先检测一个下降沿,再检测到一个上升沿,两个边沿之间的时间即为低电平持续时间,若为高电平则不去处理,等待下次外部中断触发。
具体的,还可采集信号波形持续时间:设置外部中断为单边沿触发(上升沿或下降沿)或双边沿触发(上升沿、下降沿均可触发),待采集信号发生信号电平变化时,触发并进入外部中断,读取并保存此时定时器计数寄存器值Ta,并将中断计时标志位Flag置为真,并将触发进入外部中断次数值Nc进行加1处理;
在此电平采集期间,当程序进入定时中断中时,在定时中断中判断若此计时标志位Flag为真时,则对定时中断次数值Ts进行加1处理;
当程序再次进入外部中断中时,对外部中断次数值Nc进行加1处理,当Nc次数值到达预设的次数时,读取此时定时器的计数寄存器值Tb,一次波形持续时间采集完成;
当Ts=0时,即说明两次触发的外部中断时间不大于最小的定时间隔t,则此电平持续时间Tc_value=[(Tmax-Ta)+(Ta-T)+t*(Ts-1)]*(1/F),即Tc_value=(Tb-Ta)*(1/F);
当Ts>0时,则此电平持续时间Tc_value=[(Tmax-Ta)+(Ta-T)+t*(Ts-1)]*(1/F),即Tc_value=t*Ts+(Tb-Ta)*(1/F)。
本发明的一种信号持续时间采集方法成本低,对芯片资源要求少,能精确采集到需采集的信号时间,程序通用性好,移植性和一致性好。
可以理解,本发明是通过一些实施例进行描述的,本领域技术人员知悉的,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等效替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明所保护的范围内。

Claims (9)

1.一种信号持续时间采集方法,其特征在于,包括如下步骤:
将单片机配置定时器功能,设定时钟频率F,设定定时时间间隔t;
当待采集信号发生首次电平变化时,触发并进入外部中断,对外部中断次数值Nc作加1处理,读取此时定时器计数寄存器值Ta,并将中断计时标志位置为真;
当电平持续期间程序进入定时中断时,若计时标志位为真,对定时中断次数值Ts作加1处理;
当待采集信号发生电平变化触发进入外部中断次数值Nc到达预设值时,读取此时定时器计数寄存器值Tb;
计算得出信号持续时间Tc_value=t*Ts+(Tb-Ta)*(1/F)。
2.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
当外部中断次数Nc=2时,完成一次电平持续时间采集。
3.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
当外部中断次数Nc≥2时,完成一次波形持续时间采集。
4.根据权利要求2或3所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
若判定外部中断电平为高电平,将上升沿时标志位置为真,则先检测一个上升沿,再检测到一个下降沿,采集两个边沿之间的高电平持续时间。
5.根据权利要求2或3所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
若判定外部中断电平为低电平,将下降沿时标志位置为真,则先检测一个下降沿,再检测到一个上升沿,采集两个边沿之间的低电平持续时间。
6.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
设定定时器计数寄存器初始值T,设定定时器计数寄存器最大值Tmax,则t=Tmax-T。
7.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
设置外部中断为单边沿触发或双边沿触发。
8.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
设置外部中断优先级大于等于定时中断优先级,并允许外部中断嵌套在定时中断中。
9.根据权利要求1所述的信号持续时间采集方法,其特征在于,所述方法具体包括:
在将单片机配置定时器功能之前,将外部信号采集口设置在单片机的外部中断端口。
CN202110093107.5A 2021-01-25 2021-01-25 一种信号持续时间采集方法 Pending CN112904090A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110093107.5A CN112904090A (zh) 2021-01-25 2021-01-25 一种信号持续时间采集方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110093107.5A CN112904090A (zh) 2021-01-25 2021-01-25 一种信号持续时间采集方法

Publications (1)

Publication Number Publication Date
CN112904090A true CN112904090A (zh) 2021-06-04

Family

ID=76118653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110093107.5A Pending CN112904090A (zh) 2021-01-25 2021-01-25 一种信号持续时间采集方法

Country Status (1)

Country Link
CN (1) CN112904090A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114218139A (zh) * 2021-12-15 2022-03-22 北京航天控制仪器研究所 一种基于实时操作系统和fpga的仿真转台高速同步采集方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710258A (zh) * 2012-06-05 2012-10-03 上海辛克试验机有限公司 一种基于单片机的低频信号的数字倍频方法
CN104698286A (zh) * 2014-07-24 2015-06-10 北京航空航天大学 一种基于定时器的pwm波采集方法
CN111220843A (zh) * 2020-01-18 2020-06-02 惠州华阳通用电子有限公司 一种信号电平持续时间测量方法及装置
CN210693808U (zh) * 2019-10-30 2020-06-05 南京元晨微电子科技有限公司 一种pwm信号电平持续时间检测电路
CN111429711A (zh) * 2020-04-01 2020-07-17 深圳盈特创智能科技有限公司 一种红外接收方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710258A (zh) * 2012-06-05 2012-10-03 上海辛克试验机有限公司 一种基于单片机的低频信号的数字倍频方法
CN104698286A (zh) * 2014-07-24 2015-06-10 北京航空航天大学 一种基于定时器的pwm波采集方法
CN210693808U (zh) * 2019-10-30 2020-06-05 南京元晨微电子科技有限公司 一种pwm信号电平持续时间检测电路
CN111220843A (zh) * 2020-01-18 2020-06-02 惠州华阳通用电子有限公司 一种信号电平持续时间测量方法及装置
CN111429711A (zh) * 2020-04-01 2020-07-17 深圳盈特创智能科技有限公司 一种红外接收方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵翠玉: "基于AT89C52 脉冲宽度测量仪的设计与实现", 《数字技术与应用》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114218139A (zh) * 2021-12-15 2022-03-22 北京航天控制仪器研究所 一种基于实时操作系统和fpga的仿真转台高速同步采集方法

Similar Documents

Publication Publication Date Title
CN1105477C (zh) 无线电通信设备的接收部分
CA1195780A (en) Microcomputer retriggerable interval counter
CN103995766A (zh) 一种检测控制处理器温度的方法
CN110910629B (zh) 基于单片机的红外遥控信号解码方法、系统及计量装置
CN112904090A (zh) 一种信号持续时间采集方法
JPH0249599B2 (zh)
CN109066579B (zh) 一种过压保护方法及装置
CN109543811B (zh) 一种计数电路、计数方法及芯片
CN113038445B (zh) 一种蓝牙休眠时钟的校准方法
CN110262920A (zh) Linux系统外置看门狗间接喂狗方法、看门狗喂狗代理驱动模块、看门狗系统
CN209231361U (zh) 基于pwm信号的速度检测器、处理电路及芯片
CN107168902B (zh) 一种利用dma实现高速can波特率的自动识别方法
EP2612205A2 (en) Low energy sensor interface
CN103516288A (zh) 一种自适应的编码器测速装置和方法
CN111175573A (zh) 交流电压频率的检测方法、装置、设备及介质
CN110380654B (zh) 永磁同步电机霍尔传感器信号采集的抖动抗扰方法及装置
CN107831696B (zh) 一种irig-b直流码解码方法
CN112615609A (zh) 一种具有自动切换看门狗周期的复位电路
CN112858715A (zh) 一种直流变频电机转速取样时受高频信号干扰的解决方法
CN107632787A (zh) 数据读取方法、装置及系统
CN109471663B (zh) 单片机程序的执行方法及装置
CN101943958B (zh) 一种防止轨迹球误操作的方法及终端设备
CN215744153U (zh) 一种离心机的转速检测和转头识别装置
CN115166284A (zh) 频率信号采集系统及频率信号采集方法
AU2020414826B2 (en) Hair dryer control method and apparatus, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20210604

RJ01 Rejection of invention patent application after publication