CN111830816B - 自适应定时方法、装置 - Google Patents

自适应定时方法、装置 Download PDF

Info

Publication number
CN111830816B
CN111830816B CN202010595042.XA CN202010595042A CN111830816B CN 111830816 B CN111830816 B CN 111830816B CN 202010595042 A CN202010595042 A CN 202010595042A CN 111830816 B CN111830816 B CN 111830816B
Authority
CN
China
Prior art keywords
time
pulse
counter
initial value
time node
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.)
Active
Application number
CN202010595042.XA
Other languages
English (en)
Other versions
CN111830816A (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.)
Nanjing Tianlang Defense Technology Co ltd
Original Assignee
Nanjing Tianlang Defense 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 Nanjing Tianlang Defense Technology Co ltd filed Critical Nanjing Tianlang Defense Technology Co ltd
Priority to CN202010595042.XA priority Critical patent/CN111830816B/zh
Publication of CN111830816A publication Critical patent/CN111830816A/zh
Application granted granted Critical
Publication of CN111830816B publication Critical patent/CN111830816B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G04HOROLOGY
    • G04FTIME-INTERVAL MEASURING
    • G04F10/00Apparatus for measuring unknown time intervals by electric means
    • G04F10/04Apparatus for measuring unknown time intervals by electric means by counting pulses or half-cycles of an ac
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K7/00Modulating pulses with a continuously-variable modulating signal
    • H03K7/08Duration or width modulation ; Duty cycle modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Pulse Circuits (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开了一种自适应定时方法、装置,所述方法包括:设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;所述计数器初值依据发生中断的次数而相应增长。采用上述技术方案,定时脉冲相对0时刻可正、可负;降低时序的存储开销。

Description

自适应定时方法、装置
技术领域
本发明涉及单片机定时控制领域,尤其涉及一种自适应定时方法、装置。
背景技术
单片机定时器通常用于控制脉冲的输出,在现有技术中采用的定时器控制脉冲方案中,定时器只能相对于0时刻设置正的时间序列,不适用于需要设置负的时间序列,其次,定时器的时间序列都是相对于0时刻而言的,当时序较多时会占用大量的存储空间,从而降低了定时器的性能。
发明内容
发明目的:本发明旨在提供一种自适应定时方法、装置,通过计数器初值与时间序列之间的设置关系,实现定时脉冲相对0时刻可正、可负,其次,通过设置时间节点和脉冲宽度,每个定时脉冲的相对时序关系可任意配置,可以降低时序的存储开销。
技术方案:本发明提供一种自适应定时方法,包括:设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;所述计数器初值依据发生中断的次数而相应增长。
具体的,所述定时器工作方式为TMOD=1。
具体的,所述定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
具体的,所述时间序列为t0,Δt0,t1,Δt1,…,tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度,时间节点占计数器12位,脉冲宽度占计数器4位。
具体的,当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点。
本发明还提供一种自适应定时装置,包括:设定单元和计数单元,其中:
所述设定单元,用于设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;
所述计数单元,用于控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;所述计数器初值依据发生中断的次数而相应增长。
具体的,所述定时器工作方式为TMOD=1。
具体的,所述定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
具体的,所述时间序列为t0,Δt0,t1,Δt1,…,tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度,时间节点占计数器12位,脉冲宽度占计数器4位。
具体的,所述计数单元,用于当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点。
有益效果:与现有技术相比,本发明具有如下显著优点:定时脉冲相对0时刻可正、可负;降低时序的存储开销。
附图说明
图1为本发明提供的自适应定时方法的流程示意图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
参阅图1,其为本发明提供的自适应定时方法的流程示意图。
步骤1,设定脉冲的时间序列,和定时器发生中断的时间宽度。
本发明实施例中,所述时间序列包括时间节点、脉冲宽度。
本发明实施例中,所述时间序列为t0,Δt0,t1,Δt1,…,tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度。
在具体实施中,时间节点是控制脉冲开始的时刻,脉冲宽度是控制脉冲持续发生的时间,其中脉冲宽度Δt0对应的是时间节点t0开始的脉冲,Δt1对应的是t1,其他同理,不同时间节点对应的脉冲宽度可以设置的不一致,也即每个定时脉冲的相对时序关系可任意配置。
在具体实施中,时间序列中时间节点的设置相对于0时刻可正、可负,通过时间序列控制的定时脉冲可以用于控制外部器件。
本发明实施例中,定时器工作方式为TMOD=1。
本发明实施例中,定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
在具体实施中,在单片机中(例如8031单片机),有两个计数器(TH0和TL0),设置定时器的工作模式为TM0D=1,即16位定时器,最大的计数量为65535;对于一个12M的晶体振荡器,供给计数器的脉冲时间间隔为1微秒。在初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff,即当发生50000次振荡后,T0溢出,产生一次中断,中断每50ms发生一次(中断的时间宽度),因此50ms可以作为定时器的时间序列单位,根据实际应用场景,中断的时间宽度也可以相应的进行调整。
本发明实施例中,时间节点占计数器12位,脉冲宽度占计数器4位。
在具体实施中,时间序列占用的存储空间为(12+4)*n/8=2n字节,可控制n个矩形脉冲的产生,最大脉冲延迟为2047*50=102350ms=102.35s,最大脉冲宽度为15*50=750ms=0.75s。通过设置时间节点和脉冲宽度,以及时间节点和脉冲宽度的计数器位数分配,每个定时脉冲的相对时序关系可任意配置,可以降低时序的存储开销。
步骤2,控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;所述计数器初值依据发生中断的次数而相应增长。
本发明实施例中,当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点。
在具体实施中,可以设置计数器初值num=0,每次触发中断时num加1,则当num等于零时,触发第一个脉冲事件,对于其余时间序列t0,t1,…,tn-1,当num等于ti-t0时触发开始脉冲事件,当num等于ti-t0+Δti时触发结束脉冲事件。
在具体实施中,通过计数器初值与时间节点之间的设置关系,实现定时脉冲相对0时刻可正、可负,在通过单片机定时器实际控制外部器件时,可以据此校正时间误差。
在具体实施中,ti可以为t0,t1,…,tn-1中任意一个时间节点,若需要重新设置脉冲的产生时间和脉冲宽度,重新设置时间序列t0,Δt0,t1,Δt1,…,tn-1,Δtn-1即可。
本发明还提供一种自适应定时装置,包括:设定单元和计数单元,其中:
所述设定单元,用于设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;
所述计数单元,用于控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;所述计数器初值依据发生中断的次数而相应增长。
本发明实施例中,所述定时器工作方式为TMOD=1。
本发明实施例中,所述定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
本发明实施例中,所述时间序列为t0,Δt0,t1,Δt1,…,tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度,时间节点占计数器12位,脉冲宽度占计数器4位。
本发明实施例中,所述计数单元,用于当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点。

Claims (8)

1.一种自适应定时方法,其特征在于,包括:
设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;所述时间序列为t0,Δt0,t1,Δt1,…,tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度;
控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点;所述计数器初值依据发生中断的次数而相应增长。
2.根据权利要求1所述的自适应定时方法,其特征在于,所述定时器工作方式为TMOD=1。
3.根据权利要求2所述的自适应定时方法,其特征在于,所述定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
4.根据权利要求3所述的自适应定时方法,其特征在于,时间节点占计数器12位,脉冲宽度占计数器4位。
5.一种自适应定时装置,其特征在于,包括:设定单元和计数单元,其中:
所述设定单元,用于设定脉冲的时间序列,和定时器发生中断的时间宽度;所述时间序列包括时间节点、脉冲宽度;所述时间序列为t0,Δt0,t1,Δt1,…tn-1,Δtn-1,其中t0,t1,…,tn-1为时间节点,Δt0,Δt1,…,Δtn-1为与各个时间节点对应的脉冲宽度;
所述计数单元,用于控制计数器开始计数,在设置的计数器初值达到时间节点时,控制触发脉冲动作;当计数器初值等于ti-t0时,控制触发开始脉冲;当计数器初值等于ti-t0+Δti时,控制触发结束脉冲;ti为第i个时间节点;所述计数器初值依据发生中断的次数而相应增长。
6.根据权利要求5所述的自适应定时装置,其特征在于,所述定时器工作方式为TMOD=1。
7.根据权利要求6所述的自适应定时装置,其特征在于,所述定时器初始化和中断时设置TH0=(65536-50000)/256,TL0=(65536-50000)&0xff。
8.根据权利要求7所述的自适应定时装置,其特征在于,时间节点占计数器12位,脉冲宽度占计数器4位。
CN202010595042.XA 2020-06-28 2020-06-28 自适应定时方法、装置 Active CN111830816B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010595042.XA CN111830816B (zh) 2020-06-28 2020-06-28 自适应定时方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010595042.XA CN111830816B (zh) 2020-06-28 2020-06-28 自适应定时方法、装置

Publications (2)

Publication Number Publication Date
CN111830816A CN111830816A (zh) 2020-10-27
CN111830816B true CN111830816B (zh) 2023-05-12

Family

ID=72898290

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010595042.XA Active CN111830816B (zh) 2020-06-28 2020-06-28 自适应定时方法、装置

Country Status (1)

Country Link
CN (1) CN111830816B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63160411A (ja) * 1986-12-24 1988-07-04 Toshiba Corp パルス幅変調回路
US4996474A (en) * 1989-07-31 1991-02-26 Hewlett-Packard Company Digital gate generation for a signal measurement instrument
CN1099324A (zh) * 1994-06-10 1995-03-01 险峰机床厂 磨床智能进给控制系统
CN1723620A (zh) * 2002-12-10 2006-01-18 皇家飞利浦电子股份有限公司 使用标准微处理器具有增强特性的pwm的硬件/软件实现
CN101604815A (zh) * 2009-06-26 2009-12-16 哈尔滨工业大学(威海) 一种控制脉冲激光建立时间的激光稳频方法
CN201623692U (zh) * 2010-01-18 2010-11-03 刘达亿 数字式脉冲宽度调制装置
RU2420776C1 (ru) * 2009-11-03 2011-06-10 Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Устройство для управления станком
CN103178814A (zh) * 2011-12-21 2013-06-26 北京普源精电科技有限公司 一种函数信号发生装置及方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU983643A1 (ru) * 1981-04-06 1982-12-23 Предприятие П/Я А-1736 Измеритель временных интервалов
JPS5981576A (ja) * 1982-11-02 1984-05-11 Sumitomo Heavy Ind Ltd 自動板切れ検出装置
CN1005231B (zh) * 1985-06-26 1989-09-20 东芝机械株式会社 产生与被驱动体角位移有关的脉冲串的脉冲发生器
EP1150470A3 (en) * 2000-04-27 2004-06-23 Alps Electric Co., Ltd. OFDM receiving device
CN1117268C (zh) * 2000-09-27 2003-08-06 潘伟潮 电子式人体健康秤
CN1138284C (zh) * 2000-10-23 2004-02-11 中国科学院长春光学精密机械与物理研究所 片式电阻刻蚀的激光脉宽可调控制方法
DE10302379B4 (de) * 2003-01-22 2005-06-09 Minebea Co., Ltd. Pulsweitenmodulatorschaltung und Verfahren zur Ansteuerung einer Pulsweitenmo- dulatorschaltung
CN2736821Y (zh) * 2004-05-18 2005-10-26 西安电子科技大学 基于可编程逻辑器件的短时间间隔测量器
JP4368787B2 (ja) * 2004-12-15 2009-11-18 Smk株式会社 パルス幅変調信号生成装置及びパルス幅変調信号の生成方法
JP4878127B2 (ja) * 2005-06-10 2012-02-15 株式会社トプコン 時間差測定装置および距離測定装置並びに距離測定方法
US7412337B2 (en) * 2005-10-13 2008-08-12 Endress + Hauser Gmbh + Co. Kg Method for determining fill level on the basis of travel time of a high-frequency measuring signal
CN101515156B (zh) * 2009-04-09 2011-05-18 北京航空航天大学 时间精密测量方法
US7986591B2 (en) * 2009-08-14 2011-07-26 Taiwan Semiconductor Manufacturing Company, Ltd. Ultra high resolution timing measurement
JP5743144B2 (ja) * 2011-05-02 2015-07-01 株式会社ユニバーサルエンターテインメント Rfidタグを備えた複数のチップからデータを読み取るシステム及び方法
CN102684606B (zh) * 2012-06-13 2014-08-06 太原理工大学 新型噪声信号发生器
CN102740572B (zh) * 2012-07-18 2015-09-30 广州凯盛电子科技有限公司 驱动电源控制电路
CN203101851U (zh) * 2013-01-29 2013-07-31 中国人民解放军92941部队 脉冲间隔测量系统的输入电路
CN103954959A (zh) * 2014-03-19 2014-07-30 南京航空航天大学 一种基于混沌信号源的步进频率雷达系统及通道构建方法
CN104777461B (zh) * 2015-04-29 2017-05-17 中国科学院空间科学与应用研究中心 一种载频随机跳变的宽带混沌雷达信号产生方法及系统
CN105204319B (zh) * 2015-10-12 2018-08-21 沈阳东软医疗系统有限公司 一种pet单事件发生时间的测量方法和装置
CN105301947B (zh) * 2015-11-17 2017-09-26 中国联合网络通信集团有限公司 一种计时方法及计时装置
CN105718257B (zh) * 2016-01-13 2018-12-25 上海理工大学 基于嵌入式系统的定时器装置及定时方法
CN106102245B (zh) * 2016-07-20 2019-02-12 杭州士兰微电子股份有限公司 Led调光器、led调光方法及led驱动装置
CN106851085B (zh) * 2016-11-22 2019-07-12 北京空间机电研究所 一种基于面阵ccd的可变谱段多光谱相机的信号处理系统
CN107222189B (zh) * 2017-05-03 2020-10-23 中科众志信通(大连)科技有限公司 一种数字脉冲宽度调制器
CN107017780B (zh) * 2017-05-31 2019-05-10 青岛大学 一种带上拉有源钳位支路的隔离型dc-dc升压变换器及其控制方法
EP3427638A1 (en) * 2017-07-10 2019-01-16 Helmholtz Zentrum München - Deutsches Forschungszentrum für Gesundheit und Umwelt (GmbH) Device and method for optoacoustic sensing
CN109799384B (zh) * 2017-11-16 2020-11-20 佛山市顺德区美的电热电器制造有限公司 电压过零检测方法、装置及烹饪电器
CN109581283A (zh) * 2018-11-13 2019-04-05 中国直升机设计研究所 一种预警机与无人机协同目标定位方法
CN109752591A (zh) * 2018-11-29 2019-05-14 北京北广科技股份有限公司 一种脉冲测量系统
CN110391804B (zh) * 2019-07-23 2023-03-14 深圳市海派特光伏科技有限公司 电子烟自动调频方法、装置、设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63160411A (ja) * 1986-12-24 1988-07-04 Toshiba Corp パルス幅変調回路
US4996474A (en) * 1989-07-31 1991-02-26 Hewlett-Packard Company Digital gate generation for a signal measurement instrument
CN1099324A (zh) * 1994-06-10 1995-03-01 险峰机床厂 磨床智能进给控制系统
CN1723620A (zh) * 2002-12-10 2006-01-18 皇家飞利浦电子股份有限公司 使用标准微处理器具有增强特性的pwm的硬件/软件实现
CN101604815A (zh) * 2009-06-26 2009-12-16 哈尔滨工业大学(威海) 一种控制脉冲激光建立时间的激光稳频方法
RU2420776C1 (ru) * 2009-11-03 2011-06-10 Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Устройство для управления станком
CN201623692U (zh) * 2010-01-18 2010-11-03 刘达亿 数字式脉冲宽度调制装置
CN103178814A (zh) * 2011-12-21 2013-06-26 北京普源精电科技有限公司 一种函数信号发生装置及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杨宏丽、王静霞.单片机应用技术.西安电子科技大学出版社,2018,第103、110-112页. *
陈景波、王伟等.51单片机实战指南.西安电子科技大学出版社,2019,第106-109页. *

Also Published As

Publication number Publication date
CN111830816A (zh) 2020-10-27

Similar Documents

Publication Publication Date Title
US7078952B2 (en) Device for calibrating a clock signal
CN111830816B (zh) 自适应定时方法、装置
CN115202496A (zh) 导航系统及其时钟校准方法
JPH0262196B2 (zh)
JP2019133206A (ja) モータ駆動システム、モータ制御システムおよび自走ロボット
US4144447A (en) Interval timer
CN213717955U (zh) 自唤醒定时器及电子设备
CN111600581B (zh) 一种数字控制的单稳态触发器及其控制方法
JPS63301627A (ja) 受信装置のパワ−セ−ブ方法
US4890048A (en) Low torque ripple stepping motor controller circuit
CA1231478A (en) Constant-percent break pulse corrector
US2879332A (en) Code converter
US3100850A (en) Broken ring counter circuit with internal pulse reset means
US4164712A (en) Continuous counting system
JPS5824000B2 (ja) 1つの中央局と複数の下位局とを有する遠隔制御装置
RU2674878C1 (ru) Устройство синхронизации микроконтроллеров
SU641435A1 (ru) Устройство дл управлени операци ми ввода-вывода данных
EP3076720B1 (en) Method and device for controlling concurrent data transmission, and terminal
RU1817098C (ru) Устройство дл управлени обменом информацией
RU1803969C (ru) Устройство дл выделени импульсов из последовательности
SU444327A1 (ru) Устройство управлени коммутатором
JPH08278943A (ja) 共有バス制御方式
RU1827714C (ru) Формирователь импульсной последовательности
JPS637918Y2 (zh)
US2956232A (en) Electronic energy storage circuits

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
GR01 Patent grant
GR01 Patent grant