CN103793287A - 捕获模拟信号周期的方法及系统 - Google Patents

捕获模拟信号周期的方法及系统 Download PDF

Info

Publication number
CN103793287A
CN103793287A CN201410016480.0A CN201410016480A CN103793287A CN 103793287 A CN103793287 A CN 103793287A CN 201410016480 A CN201410016480 A CN 201410016480A CN 103793287 A CN103793287 A CN 103793287A
Authority
CN
China
Prior art keywords
threshold values
awd
limit threshold
value
signal
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.)
Granted
Application number
CN201410016480.0A
Other languages
English (en)
Other versions
CN103793287B (zh
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.)
Shenzhen Excelsecu Data Technology Co Ltd
Original Assignee
Shenzhen Excelsecu Data Technology Co Ltd
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 Shenzhen Excelsecu Data Technology Co Ltd filed Critical Shenzhen Excelsecu Data Technology Co Ltd
Priority to CN201410016480.0A priority Critical patent/CN103793287B/zh
Publication of CN103793287A publication Critical patent/CN103793287A/zh
Application granted granted Critical
Publication of CN103793287B publication Critical patent/CN103793287B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Analogue/Digital Conversion (AREA)

Abstract

本发明公开一种捕获模拟信号周期的方法,包括以下步骤:扫描接收到的模拟信号并实时采样信号值,在信号值超过上限阀值或低于下限阀值时,触发AWD中断,并记录触发AWD中断时系统时钟的计数值,并且若是信号值超过上限阀值而触发AWD中断时,将上限阀值设置为预设最大上限值,将下限阀值设置为预设正常下限值,若是信号值低于下限阀值而触发AWD中时,将上限阀值设置为预设正常上限值,将下限阀值设置为预设最小下限值,然后返回继续扫描接收到的模拟信号循环之前的步骤。本发明还公开一种捕获模拟信号周期的系统。本发明利用单片机的AWD功能实现模拟信号周期的捕获,提高了模拟信号周期捕获的准确性和灵活性。

Description

捕获模拟信号周期的方法及系统
技术领域
本发明涉及信号处理技术领域,尤其涉及一种捕获模拟信号周期的方法及系统。
背景技术
意法半导体(STMicroelectronics,简称为ST)公司推出的单片机大都具有AWD(Analog Watch Dog,模拟看门狗)功能,即单片机的GPIO(GeneralPurpose Input Output,通用输入/输出)口具有AWD功能,AWD功能就是通过ADC(Analog-to-Digital Converter,模拟/数字转换器)不停地检测单片机的GPIO口的电压值,一旦检测到GPIO口的电压值高于设定的上限阀值或低于设定的下限阀值就会产生相应的信号量,以实现单片机复位功能。
目前业界对各种模拟信号进行信号解析时,都利用比较器检测单片机的GPIO口的电压值,一旦检测到GPIO口的电压值高于设定的上限阀值或低于设定的下限阀值就会翻转GPIO口为高电平或低电平,通过脉冲宽度调制方式对外部输入的模拟信号进行周期数据的捕获。然而,这种方案中比较器只能比较一个固定值,这会出现漏检现象,导致检测出错,同时利用比较器检测需要外围滞回电路来调节上限阀值和下限阀值,阀值调节不够灵活,而且成本较高,实现方式也复杂。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的是提供一种捕获模拟信号周期的方法及系统,旨在提高模拟信号周期测量的灵活性和准确性。
为了达到上述目的,本发明提供一种捕获模拟信号周期的方法,该捕获模拟信号周期的方法包括以下步骤:
步骤S10:扫描接收到的模拟信号并实时采样信号值;
步骤S20:判断所述信号值是否超过AWD中断的上限阀值或者低于AWD中断的下限阀值;
步骤S30:若所述信号值超过上限阀值或者低于下限阀值,则触发AWD中断,进入步骤S40;若所述信号值未超过上限阀值或者低于下限阀值,则返回执行步骤S10;
步骤S40:记录触发AWD中断时系统时钟的计数值,计算模拟信号的半周期值;
步骤S50:判断当前触发AWD中断的条件是否是所述信号值超过上限阀值;
步骤S60:若是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设最大上限值,并将下限阀值设置为预设正常下限值,返回执行步骤S10;若不是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设正常上限值,并将下限阀值设置为预设最小下限值,返回执行步骤S10。
优选地,在所述步骤S10之前,还包括步骤S70:配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
优选地,所述设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值,将下限阀值设置为预设正常下限值。
优选地,所述步骤S10具体为:通过GPIO口接收模拟信号,使能模拟/数字转换器,扫描GPIO口接收到的模拟信号并实时采样信号值。
优选地,所述步骤S40具体为:
存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
本发明进一步提供一种捕获模拟信号周期的系统,该捕获模拟信号周期的系统包括:
信号采样模块,用于扫描接收到的模拟信号并实时采样信号值;
信号检测模块,用于判断所述信号值是否超过AWD中断的上限阀值或者低于AWD中断的下限阀值,且在所述信号值超过上限阀值或者低于下限阀值时,输出触发信号触发AWD中断;以及
数据处理模块,用于记录触发AWD中断时系统时钟的计数值,计算模拟信号的半周期值;以及
参数设置模块,用于根据触发AWD中断的条件,动态调整上限阀值和下限阀值。
优选地,所述参数设置模块还用于配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
优选地,所述参数设置模块设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值,将下限阀值设置为预设正常下限值。
优选地,所述信号采样模块包括GPIO口和模拟/数字转换器,所述信号采样模块具体用于:通过GPIO口接收模拟信号,使能模拟/数字转换器,扫描GPIO口接收到的模拟信号并实时采样信号值。
优选地,所述数据处理模块具体用于:存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
本发明提供的捕获模拟信号周期的方法,通过扫描接收到的模拟信号并实时采样信号值,当信号值超过上限阀值或者低于下限阀值时,触发AWD中断,并记录触发AWD中断时系统时钟的计数值,然后判断当前触发AWD中断的条件是否是信号值超过上限阀值,若是信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设最大上限值,并将下限阀值设置为预设正常下限值,若是信号值低于下限阀值而触发AWD中断,则将上限阀值设置为预设正常上限值,并将下限阀值设置为预设最小下限值,然后继续扫描接收到的模拟信号实时采样信号值,记录触发AWD中断时系统时钟的计数值。本发明捕获模拟信号周期的方法,利用单片机的AWD功能,检测一段时间内的模拟信号,通过记录触发AWD中断时系统时钟的计数值来捕获模拟信号的周期,上限阀值和下限阀值由可根据模拟信号幅值任意调整,从而相对于比较器检测方式容错性更好,能够提高模拟信号周期捕获的准确性和灵活性,而且不需增加外围电路来调节AWD中断上/下限阀值,节约成本,易于实现。
附图说明
图1为本发明捕获模拟信号周期的方法一实施例的流程示意图;
图2为本发明捕获模拟信号周期的方法设置AWD中断上/下限阀值的实例图;
图3为本发明捕获模拟信号周期的方法另一实施例的流程示意图;
图4为本发明捕获模拟信号周期的系统较佳实施例的功能模块示意图;
图5为本发明捕获模拟信号周期的系统中信号采样模块的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
以下结合说明书附图及具体实施例进一步说明本发明的技术方案。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种捕获模拟信号周期的方法。
参照图1和图2,图1为本发明捕获模拟信号周期的方法一实施例的流程示意图;图2为本发明捕获模拟信号周期的方法设置AWD中断上/下限阀值的实例图。图2中,纵轴表示电压轴(V),横轴表示时间轴(t)。
如图1所示,本发明实施例中,捕获模拟信号周期的方法包括以下步骤:
步骤S10:扫描接收到的模拟信号并实时采样信号值;
系统在接收到外部输入的模拟信号后,连续扫描所接收到的模拟信号,并存在该模拟信号每一时刻对应的信号值(即电压值),从而能够实时采样到一信号值,通过检测采样到的信号值来检测所接收到的模拟信号。
步骤S20:判断所述信号值是否超过AWD中断的上限阀值或者低于AWD中断的下限阀值;
在采样到某一时刻模拟信号对应的信号值后,系统检测该信号值的大小,判断采样到的信号值是否超过当前设置的AWD中断的上限阀值或者低于当前设置的AWD中断的下限阀值。
步骤S30:若所述信号值超过上限阀值或者低于下限阀值,则触发AWD中断,进入步骤S40;若所述信号值未超过上限阀值或者低于下限阀值,则返回执行步骤S10;
在本实施例中,设定AWD中断被触发的条件是采样到的信号值超过当前设置的AWD中断的上限阀值或者低于当前设置的AWD中断的下限阀值,因此,在扫描模拟信号过程中,当采样到模拟信号对应的信号值超过当前设置的AWD中断的上限阀值时,就会触发一次AWD中断,或者当采样到模拟信号对应的信号值低于当前设置的AWD中断的下限阀值时,就会触发一次AWD中断。如果在扫描模拟信号过程中没有采样到高于上限阀值或者低于下限阀值的信号值,那么系统将继续扫描模拟信号,直到采样到的信号值高于上限阀值或者低于下限阀值,才会触发一次AWD中断。
步骤S40:记录触发AWD中断时系统时钟的计数值,计算模拟信号的半周期值;
为了捕获模拟信号的周期,在触发AWD中断时,系统记录当前触发AWD中断时系统时钟的计数值,即记录当前触发AWD中断时对应的时间,并且在下一次触发时,将此时记录的系统时钟的计数值作为前一次触发AWD中断记录的计数值,而将下一次触发时记录的计数值作为当前记录的计数值,依次类推,在记录当前触发AWD中断系统时钟的计数值后,将该当前触发AWD中断系统时钟的计数值作为前一次触发AWD中断记录的计数值,根据记录当前触发AWD中断系统时钟的计数值和前一次触发AWD中断记录的计数值,即可计算出模拟信号的半周期值,从而连续两次计算出的半周期值即为模拟信号的周期值。
步骤S50:判断当前触发AWD中断的条件是否是所述信号值超过上限阀值;
步骤S60:若是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设最大上限值MAX_LIMIT,并将下限阀值设置为预设正常下限值LOW_LIMIT,返回执行步骤S10;若不是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设正常上限值HIGH_LIMIT,并将下限阀值设置为预设最小下限值MIN_LIMIT,返回执行步骤S10。
在本实施例中,在采样到的信号值超过当前设置上限阀值的情况下,或者采样到的信号值低于当前设置下限阀值的情况下,系统都会触发AWD中断,因此,为了确保在信号值超过当前设置上限阀值或者低于当前设置下限阀值条件下触发一次AWD中断后,在后续的信号值超过当前设置上限阀值或者低于当前设置下限阀值都不会再触发AWD中断,系统根据AWD中断被触发的条件,动态调整AWD中断的上限阀值和下限阀值。
如图2所示,在采样到的信号值超过了AWD中断的上限阀值,系统触发AWD中断后,将上限阀值设置为预设最大上限值MAX_LIMIT,并将下限阀值设置为预设正常下限值LOW_LIMIT,使得即使后面连续采样到的信号值高于预设正常上限值HIGH_LIMIT,系统也不会再触发AWD中断,直至采样到的信号值低于预设正常下限值LOW_LIMIT时,才会触发AWD中断。
同理,在采样到的信号值低于AWD中断的下限阀值,系统触发AWD中断后,将上限阀值设置为预设正常上限值HIGH_LIMIT,并将下限阀值设置为预设最小下限值MIN_LIMIT,使得即使后面连续采样到的信号值低于预设正常下限值LOW_LIMIT,系统也不会再触发AWD中断,直至采样到的信号值高于预设正常上限值HIGH_LIMIT时,才会触发AWD中断。
在本实施例中,如图2所示,上述预设最大上限值MAX_LIMIT高于所接收到的模拟信号的最大值MAX,具体可根据实际需求而设定,例如,若所接收到的模拟信号的最大值MAX为2.5V,则可以将该预设最大上限值MAX_LIMIT设定为大于2.5V的值(如3V)。
上述预设最小下限值MIN_LIMIT低于所接收到的模拟信号的最小值MIN(即负最大值),具体可根据实际需求而设定,例如,若所接收到的模拟信号的最小值MIN为-2.5V,则可以将该预设最小下限值MIN_LIMIT设定为小于-2.5V的值(如-3V)。
上述预设正常上限值HIGH_LIMIT为所接收到的模拟信号的正半周期中对应的一个信号值,是系统触发AWD中断所设定的上限阀值,当采样到的信号值高于该预设正常上限值HIGH_LIMIT,系统触发AWD中断。为了减小相邻的信号对待测信号周期的影响,优选设置预设正常上限值HIGH_LIMIT为大于0且小于模拟信号的最大值MAX的十分之一的值,例如,所接收到的模拟信号的最大值MAX为2.5V,可根据实际需求将该预设正常上限值HIGH_LIMIT设定为0~0.25V(不包含0V)之间的任意一信号值(如0.15V)。
上述预设正常下限值LOW_LIMIT为所接收到的模拟信号的负半周期中对应的一个信号值,是系统触发AWD中断所设定的下限阀值,当采样到的信号值低于该预设正常下限值LOW_LIMIT,系统触发AWD中断。为了减小相邻的信号对待测信号周期的影响,优选设置预设正常下限值LOW_LIMIT为大于模拟信号的最小值MIN的十分之一且小于0的值,例如,所接收到的模拟信号的最小值MIN为-2.5V,可根据实际需求将该预设正常下限值LOW_LIMIT设定为-0.25~0V(不包含0V)之间的任意一信号值(如-0.15V)。
应当说明的是,上述预设正常上限值HIGH_LIMIT和预设正常下限值LOW_LIMIT相对于0V对称,如预设正常上限值HIGH_LIMIT设定为0.15V时,预设正常下限值LOW_LIMIT应当设定为-0.15V;预设正常上限值HIGH_LIMIT设定为0.2V时,预设正常下限值LOW_LIMIT应当设定为-0.2V。
相对于现有技术,本发明提供的捕获模拟信号周期的方法,利用单片机的AWD功能,检测一段时间内的模拟信号,通过记录触发AWD中断时系统时钟的计数值来捕获模拟信号的周期,上限阀值和下限阀值由可根据模拟信号幅值任意调整,从而相对于比较器检测方式容错性更好,能够提高模拟信号周期捕获的准确性和灵活性,而且不需增加外围电路来调节AWD中断上/下限阀值,节约成本,易于实现。
具体地,上述步骤S10具体为:通过GPIO口接收模拟信号,使能模拟/数字转换器,扫描GPIO口接收到的模拟信号并实时采样信号值。
在GPIO口接收到外部输入的模拟信号后,系统使能模拟/数字转换器,扫描GPIO口接收到的模拟信号,将接收到的连续的模拟信号转换为离散的数字信号,以实时采样所接收到的模拟信号在每一时刻对应的信号值。
进一步地,上述步骤S40具体为:存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
在本实施例中,在每次触发AWD中断时,系统都记录一次触发AWD中断时系统时钟的计数值,因此系统会存储上一次触发AWD中断时系统时钟的计数值t0,并记录当前触发AWD中断时系统时钟的计数值t1,而且在下一次触发时,将当前记录的系统时钟的计数值t1作为上一次触发AWD中断记录的计数值t0,而将下一次触发时记录的计数值作为当前记录的计数值t1。由于在采样到的信号值超过AWD中断的上限阀值或者低于AWD中断的下限阀值时,才会触发从而AWD中断,因此将当前触发AWD中断时系统时钟的计数值t1与上一次触发AWD中断时系统时钟的计数值t0做差后,可得到模拟信号的半周期值
Figure BDA0000456747190000081
从而通过将连续两次所得到的模拟信号的半周期值相加,即可得到模拟信号的周期值
Figure BDA0000456747190000082
因而实现对模拟信号周期的捕获。
再参照图3,图3为本发明捕获模拟信号周期的方法另一实施例的流程示意图。
基于上述实施例,本发明的另一实施例中,在上述步骤S10之前,还包括步骤S70:配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
具体地,上述设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值HIGH_LIMIT,将下限阀值设置为预设正常下限值LOW_LIMIT。
系统在扫描接收到的模拟信号,检测所采样到的信号值之前,先配置AWD功能,以利用AWD功能对所采样到的信号值进行检测,并且预先设置AWD中断初始的上限阀值和下限阀值,作为进行第一次检测所采样到的信号值的标准。本实施例将AWD中断初始的上限阀值设置为预设正常上限值HIGH_LIMIT,将AWD中断初始的下限阀值设置为预设正常下限值LOW_LIMIT,从而使得在第一次检测到所采样到的信号值高于预设正常上限值HIGH_LIMIT或者低于预设正常下限值LOW_LIMIT的情况时,都会触发AWD中断。
本发明进一步还提供一种捕获模拟信号周期的系统。
结合参照图2和图4,其中图4为本发明捕获模拟信号周期的系统较佳实施例的功能模块示意图。
如图4所示,本发明的捕获模拟信号周期的系统包括参数设置模块100、信号采样模块200、信号检测模块300和数据处理模块400。其中,信号采样模块200用于扫描接收到的模拟信号并实时采样信号值;信号检测模块300用于判断该信号值是否超过AWD中断的上限阀值或者低于AWD中断的下限阀值,且在该信号值超过上限阀值或者低于下限阀值时,输出触发信号触发AWD中断;数据处理模块400用于记录触发AWD中断时系统时钟的计数值;参数设置模块100用于根据触发AWD中断的条件,动态调整上限阀值和下限阀值。
系统在接收到外部输入的模拟信号后,连续扫描所接收到的模拟信号,并存在该模拟信号每一时刻对应的信号值(即电压值),从而能够实时采样到一信号值,通过检测采样到的信号值来检测所接收到的模拟信号。
在采样到某一时刻模拟信号对应的信号值后,系统检测该信号值的大小,判断采样到的信号值是否超过当前设置的AWD中断的上限阀值或者低于当前设置的AWD中断的下限阀值。
在本实施例中,系统设定AWD中断被触发的条件是采样到的信号值超过当前设置的AWD中断的上限阀值或者低于当前设置的AWD中断的下限阀值,因此,在扫描模拟信号过程中,当采样到模拟信号对应的信号值超过当前设置的AWD中断的上限阀值时,就会触发一次AWD中断,或者当采样到模拟信号对应的信号值低于当前设置的AWD中断的下限阀值时,就会触发一次AWD中断。如果在扫描模拟信号过程中没有采样到高于上限阀值或者低于下限阀值的信号值,那么系统将继续扫描模拟信号,直到采样到的信号值高于上限阀值或者低于下限阀值,才会触发一次AWD中断。
为了捕获模拟信号的周期,在触发AWD中断时,系统记录当前触发AWD中断时系统时钟的计数值,即记录当前触发AWD中断时对应的时间,并且在下一次触发时,将此时记录的系统时钟的计数值作为前一次触发AWD中断记录的计数值,而将下一次触发时记录的计数值作为当前记录的计数值,依次类推,在记录当前触发AWD中断系统时钟的计数值后,将该当前触发AWD中断系统时钟的计数值作为前一次触发AWD中断记录的计数值,根据记录当前触发AWD中断系统时钟的计数值和前一次触发AWD中断记录的计数值,即可计算出模拟信号的半周期值,从而连续两次计算出的半周期值即为模拟信号的周期值。
在本实施例中,在采样到的信号值超过当前设置上限阀值的情况下,或者采样到的信号值低于当前设置下限阀值的情况下,系统都会触发AWD中断,因此,为了确保在信号值超过当前设置上限阀值或者低于当前设置下限阀值条件下触发一次AWD中断后,在后续的信号值超过当前设置上限阀值或者低于当前设置下限阀值都不会再触发AWD中断,系统根据AWD中断被触发的条件,动态调整AWD中断的上限阀值和下限阀值。
如图2所示,在采样到的信号值超过了AWD中断的上限阀值,系统触发AWD中断后,将上限阀值设置为预设最大上限值MAX_LIMIT,并将下限阀值设置为预设正常下限值LOW_LIMIT,使得即使后面连续采样到的信号值高于预设正常上限值HIGH_LIMIT,系统也不会再触发AWD中断,直至采样到的信号值低于预设正常下限值LOW_LIMIT时,才会触发AWD中断。
同理,在采样到的信号值低于AWD中断的下限阀值,系统触发AWD中断后,将上限阀值设置为预设正常上限值HIGH_LIMIT,并将下限阀值设置为预设最小下限值MIN_LIMIT,使得即使后面连续采样到的信号值低于预设正常下限值LOW_LIMIT,系统也不会再触发AWD中断,直至采样到的信号值高于预设正常上限值HIGH_LIMIT时,才会触发AWD中断。
在本实施例中,上述预设最大上限值MAX_LIMIT高于所接收到的模拟信号的最大值MAX,具体可根据实际需求而设定,例如,若所接收到的模拟信号的最大值MAX为2.5V,则可以将该预设最大上限值MAX_LIMIT设定为大于2.5V的值(如3V)。
上述预设最小下限值MIN_LIMIT低于所接收到的模拟信号的最小值MIN(即负最大值),具体可根据实际需求而设定,例如,若所接收到的模拟信号的最小值MIN为-2.5V,则可以将该预设最小下限值MIN_LIMIT设定为小于-2.5V的值(如-3V)。
上述预设正常上限值HIGH_LIMIT为所接收到的模拟信号的正半周期中对应的一个信号值,是系统触发AWD中断所设定的上限阀值,当采样到的信号值高于该预设正常上限值HIGH_LIMIT,系统触发AWD中断。为了减小相邻的信号对待测信号周期的影响,优选设置预设正常上限值HIGH_LIMIT为大于0且小于模拟信号的最大值MAX的十分之一的值,例如,所接收到的模拟信号的最大值MAX为2.5V,可根据实际需求将该预设正常上限值HIGH_LIMIT设定为0~0.25V(不包含0V)之间的任意一信号值(如0.15V)。
上述预设正常下限值LOW_LIMIT为所接收到的模拟信号的负半周期中对应的一个信号值,是系统触发AWD中断所设定的下限阀值,当采样到的信号值低于该预设正常下限值LOW_LIMIT,系统触发AWD中断。为了减小相邻的信号对待测信号周期的影响,优选设置预设正常下限值LOW_LIMIT为大于模拟信号的最小值MIN的十分之一且小于0的值,例如,所接收到的模拟信号的最小值MIN为-2.5V,可根据实际需求将该预设正常下限值LOW_LIMIT设定为-0.25~0V(不包含0V)之间的任意一信号值(如-0.15V)。应当说明的是,上述预设正常上限值HIGH_LIMIT和预设正常下限值LOW_LIMIT相对于0V对称,如预设正常上限值HIGH_LIMIT设定为0.15V时,预设正常下限值LOW_LIMIT应当设定为-0.15V;预设正常上限值HIGH_LIMIT设定为0.2V时,预设正常下限值LOW_LIMIT应当设定为-0.2V。
相对于现有技术,本发明提供的捕获模拟信号周期的系统,利用单片机的AWD功能,检测一段时间内的模拟信号,通过记录触发AWD中断时系统时钟的计数值来捕获模拟信号的周期,上限阀值和下限阀值由可根据模拟信号幅值任意调整,从而相对于比较器检测方式容错性更好,能够提高模拟信号周期捕获的准确性和灵活性,而且不需增加外围电路来调节AWD中断上/下限阀值,节约成本,易于实现。
在本实施例中,上述参数设置模块100还用于配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
具体地,上述参数设置模块100设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值HIGH_LIMIT,将下限阀值设置为预设正常下限值LOW_LIMIT。
系统在扫描接收到的模拟信号,检测所采样到的信号值之前,先配置AWD功能,以利用AWD功能对所采样到的信号值进行检测,并且预先设置AWD中断初始的上限阀值和下限阀值,作为进行第一次检测所采样到的信号值的标准。本实施例将AWD中断初始的上限阀值设置为预设正常上限值HIGH_LIMIT,将AWD中断初始的下限阀值设置为预设正常下限值LOW_LIMIT,从而使得在第一次检测到所采样到的信号值高于预设正常上限值HIGH_LIMIT或者低于预设正常下限值LOW_LIMIT的情况时,都会触发AWD中断。
再参照图5,图5为本发明捕获模拟信号周期的系统中信号采样模块200的功能模块示意图。
图5中上述信号采样模块200包括GPIO口210和模拟/数字转换器220,信号采样模块200具体用于:通过GPIO口210接收模拟信号,使能模拟/数字转换器220,扫描GPIO口210接收到的模拟信号并实时采样信号值。
在GPIO口210接收到外部输入的模拟信号后,系统使能模拟/数字转换器220,扫描GPIO口210接收到的模拟信号,将接收到的连续的模拟信号转换为离散的数字信号,以实时采样所接收到的模拟信号在每一时刻对应的信号值。
进一步地,上述数据处理模块400具体用于:存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
在本实施例中,在每次触发AWD中断时,系统都记录一次触发AWD中断时系统时钟的计数值,因此系统会存储上一次触发AWD中断时系统时钟的计数值t0,并记录当前触发AWD中断时系统时钟的计数值t1,而且在下一次触发时,将当前记录的系统时钟的计数值t1作为上一次触发AWD中断记录的计数值t0,而将下一次触发时记录的计数值作为当前记录的计数值t1。由于在采样到的信号值超过AWD中断的上限阀值或者低于AWD中断的下限阀值时,才会触发从而AWD中断,因此将当前触发AWD中断时系统时钟的计数值t1与上一次触发AWD中断时系统时钟的计数值t0做差后,可得到模拟信号的半周期值
Figure BDA0000456747190000121
从而通过将连续两次所得到的模拟信号的半周期值相加,即可得到模拟信号的周期值
Figure BDA0000456747190000122
因而实现对模拟信号周期的捕获。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种捕获模拟信号周期的方法,其特征在于,包括以下步骤:
步骤S10:扫描接收到的模拟信号并实时采样信号值;
步骤S20:判断所述信号值是否超过AWD中断的上限阀值或者低于的下限阀值;
步骤S30:若所述信号值超过上限阀值或者低于下限阀值,则触发AWD中断,进入步骤S40;若所述信号值未超过上限阀值或者低于下限阀值,则返回执行步骤S10;
步骤S40:记录触发AWD中断时系统时钟的计数值,计算模拟信号的半周期值;
步骤S50:判断当前触发AWD中断的条件是否是所述信号值超过上限阀值;
步骤S60:若是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设最大上限值,并将下限阀值设置为预设正常下限值,返回执行步骤S10;若不是所述信号值超过上限阀值而触发AWD中断,则将上限阀值设置为预设正常上限值,并将下限阀值设置为预设最小下限值,返回执行步骤S10。
2.如权利要求1所述的捕获模拟信号周期的方法,其特征在于,在所述步骤S10之前,还包括步骤S70:配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
3.如权利要求2所述的捕获模拟信号周期的方法,其特征在于,所述设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值,将下限阀值设置为预设正常下限值。
4.如权利要求1所述的捕获模拟信号周期的方法,其特征在于,所述步骤S10具体为:通过GPIO口接收模拟信号,使能模拟/数字转换器,扫描GPIO口接收到的模拟信号并实时采样信号值。
5.如权利要求1所述的捕获模拟信号周期的方法,其特征在于,所述步骤S40具体为:
存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
6.一种捕获模拟信号周期的系统,其特征在于,包括:
信号采样模块,用于扫描接收到的模拟信号并实时采样信号值;
信号检测模块,用于判断所述信号值是否超过AWD中断的上限阀值或者低于AWD中断的下限阀值,且在所述信号值超过上限阀值或者低于下限阀值时,输出触发信号触发AWD中断;
数据处理模块,用于记录触发AWD中断时系统时钟的计数值,计算模拟信号的半周期值;以及
参数设置模块,用于根据触发AWD中断的条件,动态调整上限阀值和下限阀值。
7.如权利要求6所述的捕获模拟信号周期的系统,其特征在于,所述参数设置模块还用于配置AWD功能,设置AWD中断初始的上限阀值和下限阀值。
8.如权利要求7所述的捕获模拟信号周期的系统,其特征在于,所述参数设置模块设置AWD中断初始的上限阀值和下限阀值具体为:将上限阀值设置为预设正常上限值,将下限阀值设置为预设正常下限值。
9.如权利要求6所述的捕获模拟信号周期的系统,其特征在于,所述信号采样模块包括GPIO口和模拟/数字转换器,所述信号采样模块具体用于:通过GPIO口接收模拟信号,使能模拟/数字转换器,扫描GPIO口接收到的模拟信号并实时采样信号值。
10.如权利要求6所述的捕获模拟信号周期的系统,其特征在于,所述数据处理模块具体用于:存储上一次触发AWD中断时系统时钟的计数值t0,记录当前触发AWD中断时系统时钟的计数值t1,将t1与t0做差,计算出模拟信号的半周期值。
CN201410016480.0A 2014-01-14 2014-01-14 捕获模拟信号周期的方法及系统 Expired - Fee Related CN103793287B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410016480.0A CN103793287B (zh) 2014-01-14 2014-01-14 捕获模拟信号周期的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410016480.0A CN103793287B (zh) 2014-01-14 2014-01-14 捕获模拟信号周期的方法及系统

Publications (2)

Publication Number Publication Date
CN103793287A true CN103793287A (zh) 2014-05-14
CN103793287B CN103793287B (zh) 2017-04-19

Family

ID=50668996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410016480.0A Expired - Fee Related CN103793287B (zh) 2014-01-14 2014-01-14 捕获模拟信号周期的方法及系统

Country Status (1)

Country Link
CN (1) CN103793287B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020140500A1 (zh) * 2019-01-02 2020-07-09 珠海格力电器股份有限公司 一种模拟看门狗装置及其控制方法
CN111443240A (zh) * 2020-03-25 2020-07-24 科华恒盛股份有限公司 一种电网电压波形的捕获方法、系统及逆变设备
CN112564705A (zh) * 2020-12-02 2021-03-26 湖北方圆环保科技有限公司 一种测氡仪多道数据采集方法
CN114301501A (zh) * 2021-12-24 2022-04-08 北京海林自控科技股份有限公司 一种载波通信检测方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370186B1 (en) * 1997-11-21 2002-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Signal processing
CN1797973A (zh) * 2004-12-27 2006-07-05 三星电子株式会社 减少虚警率的信号捕获设备和方法
CN102662183A (zh) * 2012-04-27 2012-09-12 桂林电子科技大学 Gps信号捕获方法与系统
CN103197142A (zh) * 2013-03-15 2013-07-10 清华大学 未知频率持续模拟信号和猝发数字信号同时捕获方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370186B1 (en) * 1997-11-21 2002-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Signal processing
CN1797973A (zh) * 2004-12-27 2006-07-05 三星电子株式会社 减少虚警率的信号捕获设备和方法
CN102662183A (zh) * 2012-04-27 2012-09-12 桂林电子科技大学 Gps信号捕获方法与系统
CN103197142A (zh) * 2013-03-15 2013-07-10 清华大学 未知频率持续模拟信号和猝发数字信号同时捕获方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020140500A1 (zh) * 2019-01-02 2020-07-09 珠海格力电器股份有限公司 一种模拟看门狗装置及其控制方法
CN111400074A (zh) * 2019-01-02 2020-07-10 珠海格力电器股份有限公司 一种模拟看门狗装置及其控制方法
CN111443240A (zh) * 2020-03-25 2020-07-24 科华恒盛股份有限公司 一种电网电压波形的捕获方法、系统及逆变设备
CN111443240B (zh) * 2020-03-25 2022-04-29 科华恒盛股份有限公司 一种电网电压波形的捕获方法、系统及逆变设备
CN112564705A (zh) * 2020-12-02 2021-03-26 湖北方圆环保科技有限公司 一种测氡仪多道数据采集方法
CN114301501A (zh) * 2021-12-24 2022-04-08 北京海林自控科技股份有限公司 一种载波通信检测方法及系统

Also Published As

Publication number Publication date
CN103793287B (zh) 2017-04-19

Similar Documents

Publication Publication Date Title
US7800737B2 (en) Laser range finding device and distance measurement method thereof
CN103793287A (zh) 捕获模拟信号周期的方法及系统
CN104915068A (zh) 光学模数转换器及方法
US9880266B2 (en) Measurement system incorporating ambient light component nullification
WO2016045095A1 (zh) 一种校准检测距离的方法、装置及设备
CN108195465B (zh) 一种光信号检测装置及方法
CN103226204A (zh) 探测器信号的测试系统及方法
DE102014214880A1 (de) Messen der Leistungsaufnahme von Schaltungskomponenten im Betriebsmodus
CN108242137B (zh) 用于传感器的警报触发方法及使用其的电子装置
US8896289B2 (en) Circuit and method of signal detection
CN104579266A (zh) 一种电路系统及其上电复位的方法
CN109085414B (zh) 电压检测方法及装置
CN202142836U (zh) 过流信号检测电路
US11287462B2 (en) Status detection of alarm sounding parts
CN105548641A (zh) 波形触发装置、用于波形触发的示波器及波形触发方法
US10340957B2 (en) Methods and devices for monitoring optical signals
CN210863959U (zh) 一种基于fpga电气信号检测的主板自检装置
US20150229122A1 (en) Method and device for recognizing a short circuit in a pwn driver circuit
CN202472847U (zh) 设有地址编码器的烟雾探测器
US8624648B2 (en) System reset circuit and method
US11054933B2 (en) Touch sensor circuit and touch sensor method
CN208043910U (zh) 一种新型峰值检波电路
CN204789987U (zh) 一种激光雷达门控信号发生装置
CN203911879U (zh) 脉冲展宽电路
CN204731331U (zh) 一种spdif接口信号的触发装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170419

Termination date: 20190114