法律状态公告日
法律状态信息
法律状态
2018-03-13
未缴年费专利权终止 IPC(主分类):G06F1/04 授权公告日:20141008 终止日期:20170221 申请日:20110221
专利权的终止
2014-10-08
授权
授权
2012-10-03
实质审查的生效 IPC(主分类):G06F1/04 申请日:20110221
实质审查的生效
2012-08-15
公开
公开
本申请是申请号为2011100416371;申请日为2011年2月21日;发明名称为:一种多 任务操作系统下的高精度定时器及其实现方法的分案申请。
技术领域
本发明主要涉及计算机控制领域,尤其涉及一种高精度定时器及其实现方法。
背景技术
随着现代自动化技术的发展,利用计算机实现的实时控制技术被广泛应用于工业生产。 定时器作为计算机控制系统特别是实时控制系统中的重要组成部分,被经常使用在定时信号 输出、数据读取、设备控制等操作中,特别是对精度控制要求较高的系统,更要求精确的定 时操作。
传统的精确定时常采用DOS计时器中断技术,可以获取精确到毫秒级的时间间隔,很方 便地开发出实时控制软件。但DOS是单任务系统,一旦系统进入延时操作,则无法进行其他 操作,只能完成简单的定时工作。同时,由于任务处理的时间不确定,定时精度也受到一定 的影响。在DOS下很难开发出具有良好人机交互功能的应用程序,且程序扩展性较差,这种 方法的适用面比较窄。
相对于单任务DOS操作系统的多任务操作系统,如Windows操作系统,环境下开发程序, 可以利用系统提供的某些函数或操作功能等编写程序进行精确定时,其最高精度也能达到毫 秒级。但由于在使用这些函数或操作功能时,消息会被放在常规的消息队列中,并与其他消 息一起排队,有时并不能立即得到响应。当进行实时控制时,如果经常进行定时操作,那么 这些时间段就不能接受到任何其它消息。显然,这种情况下,对于需要精确时间间隔的实时 控制系统来说是致命的。因此目前在多任务操作系统中编写高精度的定时器程序非常困难, 特别是精确度在微秒级的程序基本上是不可行的。
发明内容
本发明是为避免上述现有技术所存在的不足,提供一种多任务操作系统下的高精度定时 器及其实现方法,以期达到在多任务操作系统下实现精确度为微秒级的高精度定时的发明目 的。
本发明为解决技术问题采用如下技术方案:
本发明多任务操作系统下的高精度定时器的特点是以外部方波振荡器产生基准信号,采 用计算机并口中断,实现微秒级的高精度定时。
本发明多任务操作系统下的高精度定时器的特点也在于:
设置所述外部方波振荡器是由外部方波振荡电路和外部频率调节器构成,在所述外部方 波振荡器与计算机并口之间以连线相连接,所述连线包括由计算机并口D0~D7中任意一条 数据线与方波振荡器供电电源VCC之间的电源接线、由计算机并口任意一条GND线与方 波振荡器GND相连接的接地线,以及由计算机并口中的ACK应答接收线与方波振荡器输 出时钟信号相连接的时钟信号线。
本发明多任务操作系统下的高精度定时器的实现方法的特点是按以下步骤完成:
a、调节频率调节器,确定外部方波振荡器输出端时钟基准;
b、将计算机并口设置为允许中断;
c、开启计算机并口中断,置电源接线为高电位,启动外部方波振荡器,开始方波信号 的输出;
d、利用中断服务程序的设定,确定对方波振荡器输出的方波个数,开始定时操作;
e、置电源接线为低电位,关闭外部方波振荡器,停止方波信号的输出,关闭计算机并 口中断,停止定时操作。
与已有技术相比,本发明有益效果体现在:
1、本发明通过在计算机并口上安装频率可调的方波振荡器作为时钟基准,利用中断进 行定时操作,就能达到在多任务操作系统下实现精确度为微秒级的高精度定时目的。
2、本发明是在多任务操作系统环境下,同一计时周期内,只要确定对方波振荡器输出 的方波个数即可实现相应的定时功能。
3、本发明是以外部方波振荡信号为基准,采用并口中断,以硬件中断的方式避免了在 多任务操作系统下软件编程调用函数的不确定性或过度占用资源等问题,可以实现微秒级的 高精度定时。
附图说明
图1是本发明多任务操作系统下高精度定时器定时原理图。
具体实施方式
参见图1,本实施例中设置外部方波振荡器是由外部方波振荡电路101和外部频率调节 器102构成,在外部方波振荡器与计算机并口103之间以连线相连接,连线包括由计算机并 口2-9引脚即D0~D7中任意一条数据线与方波振荡器供电电源VCC之间的电源接线104、 由计算机并口18-25引脚中任意一条即任意一条GND线与方波振荡器GND相连接的接地 线105,以及由计算机并口中第10引脚即ACK应答接收线与方波振荡器输出时钟信号相连 接的时钟信号线106。
方波振荡器中的方波振荡电路101用于产生周期小于微秒的方波信号,频率调节器102 用于调节方波振荡器的方波信号周期,确定方波振荡器输出端时钟基准。当电源接线104电 位为1即高电位时,方波振荡器电源被接通,相当于开启方波振荡器,时钟信号线106有方 波信号输出。当电源接线104的电位为0即低电位时,方波振荡器电源被撤除,相当于关闭 方波振荡器,其时钟信号线106无输出。
针对这一电路结构,本实施例中的多任务操作系统下高精度定时器按如下流程工作:
步骤201:将频率可调的方波振荡器与计算机并口103相连;
步骤202:调节频率调节器102,确定方波振荡器输出端时钟基准;
步骤203:将计算机并口的端口设置为允许中断;
步骤204:开启并口中断;
步骤205:置电源接线104的电位为1即高电位,启动方波振荡器,开始方波输出;
步骤206:利用中断服务程序的设定,确定对方波振荡器输出的方波个数,开始定时操 作;
步骤207:置电源接线104的电位为0即低电位,关闭方波振荡器,停止方波输出;
步骤208:关闭计算机并口中断,停止定时操作。
上述工作流程中,执行步骤204~208,即可实现微秒级的高精度定时;另一方面,执 行步骤204~208时运用并口中断技术,即避免了在多任务操作系统下软件编程调用函数出 现的不确定性或过度占用资源等问题。
机译: 在支持多任务操作的操作系统中实现的WIPI平台多任务系统及其方法
机译: 多任务操作系统中定时器的制备方法
机译: 一种在模拟扫描滤波器的情况下实现高精度系数的方法和装置