System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及定时器的,尤其是涉及一种hrt定时器驱动的优化方法、装置和电子设备。
技术介绍
1、hrt定时器是通过timer的比较值实现可连续比较定时的一种定时器驱动,而该定时器作为autosar os中一种重要的系统资源,其算法的优劣性将直接影响到os的运行性能,甚至会影响到功能的实现和完整性。
2、目前,大多数autosar os的供应商发布的os中,为了实现对hrt翻转后能够正常调度,往往采用的策略是将hrt所驱动的os对象(alarm,schedule table等)的周期或其他时间参数限制在hrt的最大计数值(翻转值)的一半,否则将导致系统出现调度不准确甚至直接宕机的问题。在上述这类算法中(即将hrt所驱动的os对象的周期或其他时间参数限制在hrt的最大计数值的一半的算法中),hrt的性能将不能完全被释放出来,并且驱动的目标对象的使用将受到严重的制约,大大限制了hrt的使用场景,尤其在使用隐式调度表的时候,由于该类算法的缺陷(即限制在hrt的最大计数值的一半),将导致隐式调度表无法被正常使用,或偏离autosar os规范(例如,sws_os_00429规范、sws_os_00426规范等)才能在特定的场景使用。
3、综上,现有的hrt定时器的计数方法存在hrt所驱动的os对象的时间参数会受到制约,且隐式调度表偏离autosar os规范才能在特定的场景使用的技术问题。
技术实现思路
1、有鉴于此,本专利技术的目的在于提供一种hrt定时器驱动的优
2、第一方面,本专利技术实施例提供了一种hrt定时器驱动的优化方法,包括:
3、获取计算理论comparevalue的时间基准、成功设置完comparevalue的时间和将要触发的comparevalue;
4、根据所述计算理论comparevalue的时间基准和所述成功设置完comparevalue的时间计算第一正向差值;
5、根据所述计算理论comparevalue的时间基准和所述将要触发的comparevalue计算第二正向差值;
6、若所述第一正向差值不小于所述第二正向差值,则手动触发hrt定时器中断;
7、若所述第一正向差值小于所述第二正向差值,则将所述将要触发的comparevalue设置到所述hrt定时器的比较器。
8、进一步的,获取计算理论comparevalue的时间基准、成功设置完comparevalue的时间和将要触发的comparevalue,包括:
9、在hrt中断服务函数的现场中,将当前hrt触发中断时的comparevalue作为所述计算理论comparevalue的时间基准;
10、在非所述hrt中断服务函数的现场中,将调用设置comparevalue的接口函数之前,获取的hrt的当前计数值作为所述计算理论comparevalue的时间基准;
11、将设置成功comparevalue后获取的hrt计数值作为所述成功设置完comparevalue的时间;
12、获取根据应用场景定义的offsettime,并根据所述计算理论comparevalue的时间基准和所述offsettime计算所述将要触发的comparevalue。
13、进一步的,根据所述计算理论comparevalue的时间基准和所述成功设置完comparevalue的时间计算第一正向差值,包括:
14、若所述计算理论comparevalue的时间基准不大于所述成功设置完comparevalue的时间,则所述第一正向差值=所述成功设置完comparevalue的时间-所述计算理论comparevalue的时间基准;
15、若所述计算理论comparevalue的时间基准大于所述成功设置完comparevalue的时间,则所述第一正向差值=hrt的最大计数值-所述计算理论comparevalue的时间基准+所述成功设置完comparevalue的时间+1。
16、进一步的,根据所述计算理论comparevalue的时间基准和所述将要触发的comparevalue计算第二正向差值,包括:
17、若所述计算理论comparevalue的时间基准不大于所述将要触发的comparevalue,则所述第二正向差值=所述将要触发的comparevalue-所述计算理论comparevalue的时间基准;
18、若所述计算理论comparevalue的时间基准大于所述将要触发的comparevalue,则所述第二正向差值=hrt的最大计数值-所述计算理论comparevalue的时间基准+所述将要触发的comparevalue+1。
19、进一步的,若所述第一正向差值不小于所述第二正向差值,表示hrt定时器的计数值还没到所述成功设置完comparevalue的时间,hrt定时器的计数值就已经经过了所述将要触发的comparevalue。
20、进一步的,根据所述计算理论comparevalue的时间基准和所述offsettime计算所述将要触发的comparevalue,包括:
21、所述将要触发的comparevalue=所述计算理论comparevalue的时间基准+所述offsettime。
22、第二方面,本专利技术实施例还提供了一种hrt定时器驱动的优化装置,包括:
23、获取单元,用于获取计算理论comparevalue的时间基准、成功设置完comparevalue的时间和将要触发的comparevalue;
24、第一计算单元,用于根据所述计算理论comparevalue的时间基准和所述成功设置完comparevalue的时间计算第一正向差值;
25、第二计算单元,用于根据所述计算理论comparevalue的时间基准和所述将要触发的comparevalue计算第二正向差值;
26、手动触发单元,用于若所述第一正向差值不小于所述第二正向差值,则手动触发hrt定时器中断;
27、设置单元,用于若所述第一正向差值小于所述第二正向差值,则将所述将要触发的comparevalue设置到所述hrt定时器的比较器。
28、进一步的,所述获取单元还用于:
29、在hrt中断服务函数的现场中,将当前hrt触发中断时的comparevalue作为所述计算理论comparevalue的时间基准;
30、在非所述hrt中断服务函数的现场中,将调用设置comparevalue的接口函数之前,获取的hrt的当前计数值作为所述计算理论comparevalue的时间基准本文档来自技高网...
【技术保护点】
1.一种HRT定时器驱动的优化方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,获取计算理论CompareValue的时间基准、成功设置完CompareValue的时间和将要触发的CompareValue,包括:
3.根据权利要求1所述的方法,其特征在于,根据所述计算理论CompareValue的时间基准和所述成功设置完CompareValue的时间计算第一正向差值,包括:
4.根据权利要求1所述的方法,其特征在于,根据所述计算理论CompareValue的时间基准和所述将要触发的CompareValue计算第二正向差值,包括:
5.根据权利要求1所述的方法,其特征在于,若所述第一正向差值不小于所述第二正向差值,表示HRT定时器的计数值还没到所述成功设置完CompareValue的时间,HRT定时器的计数值就已经经过了所述将要触发的CompareValue。
6.根据权利要求2所述的方法,其特征在于,根据所述计算理论CompareValue的时间基准和所述OffsetTime计算所述将要触发的Compa
7.一种HRT定时器驱动的优化装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述获取单元还用于:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可运行指令,所述机器可运行指令在被处理器调用和运行时,所述机器可运行指令促使所述处理器运行上述权利要求1至6中任一项所述的方法。
...【技术特征摘要】
1.一种hrt定时器驱动的优化方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,获取计算理论comparevalue的时间基准、成功设置完comparevalue的时间和将要触发的comparevalue,包括:
3.根据权利要求1所述的方法,其特征在于,根据所述计算理论comparevalue的时间基准和所述成功设置完comparevalue的时间计算第一正向差值,包括:
4.根据权利要求1所述的方法,其特征在于,根据所述计算理论comparevalue的时间基准和所述将要触发的comparevalue计算第二正向差值,包括:
5.根据权利要求1所述的方法,其特征在于,若所述第一正向差值不小于所述第二正向差值,表示hrt定时器的计数值还没到所述成功设置完comparevalue的时间,hrt定时器的计数值就已...
【专利技术属性】
技术研发人员:江国龙,曹斌,李庚,
申请(专利权)人:东软睿驰汽车技术武汉有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。