System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及车载应用层信号处理,具体涉及一种车载应用层信号处理方法、电子设备和存储介质。
技术介绍
1、目前汽车的中控大屏所呈现给用户的操作界面是由其所运行的操作系统实现的,无论是当前占据主流的androidauto操作系统还是harmonyos操作系统,其应用层都属于所在生态系统架构中的最上层,这种应用层的软件因为第一使用者是用户,因此良好的使用体验直接决定了汽车品牌的使用体验、口碑和销量。
2、尤其是控制车辆各种零部件(例如车门、车窗、空调、座椅等)的车控应用,其主要职责是代替传统汽车各种机械按钮提供各种复杂的控制功能给用户,其主要依赖汽车各个零部件的can信号或者其它信号来显示状态或下发指令,然而,因为车控应用属于所在系统的最上层,一个信号从外部接收器到车控应用所经过的链路往往很长,这中间存在无法避免的时间延迟和未知的时序,车控应用很可能刚接收到下层传递上来的信号,而该信号与实际的信号已经不相同了,甚至先发出的a信号后发出的b信号,而车控应用可能会先收到b信号再收到a信号,所以这种无法确定时序和无法避免延迟的程序编写环境,成为了车控应用的bug,不易分析,成为解决的痛点。实践发现现有的编程逻辑在处理未知时序的信号时,如果信号过多,或者某些信号变化频率较高的情况下,会严重影响程序的性能,资源损耗严重。在面对长周期的信号收发时会产生状态闪变,按钮回弹的现象。
3、有鉴于此,特提出本申请。
技术实现思路
1、以下给出一个或多个方面的简要概述以提供对这些方面的基
2、本申请提供一种车载应用层信号处理方法,其有益效果为:降低了车载应用层程序开发的难度,有利于程序代码的维护,提高了高并发、高频率业务逻辑的处理性能。
3、第一方面,本申请提供了一种车载应用层信号处理方法,包括以下步骤:当第一次监听到多个预设信号中的任意信号发生变化时,执行预设的业务逻辑;
4、响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕;
5、响应于所述业务逻辑的一次执行完毕,更新针对所述业务逻辑的二次执行标志;
6、响应于更新后的所述二次执行标志,再次执行所述业务逻辑。
7、进一步的,所述响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕,包括:
8、响应于再次监听到所述多个预设信号中的任意信号发生变化,且通过cas原子操作将第一标志位成功设置为第一状态,则确定所述业务逻辑的一次执行完毕;
9、或者,响应于再次监听到所述多个预设信号中的任意信号发生变化,且所述第一标志位为第二状态,则确定所述业务逻辑的一次执行完毕。
10、进一步的,所述二次执行标志包括预设的第二标志位,所述更新针对所述业务逻辑的二次执行标志,包括:
11、将预设的第二标志位设置为第三状态,以表示所述业务逻辑需要再次执行。
12、进一步的,所述再次执行所述业务逻辑之前,还包括:
13、将所述第一标志位设置为第一状态,并将所述第二标志位设置为第四状态,以表示所述业务逻辑不需要再次执行。
14、进一步的,所述当第一次监听到多个预设信号中的任意信号发生变化时,执行预设的业务逻辑的同时还包括:开始计时;
15、对应的,所述响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕,包括:
16、响应于再次监听到所述多个预设信号中的任意信号发生变化且计时时长达到时长阈值,判断所述业务逻辑的一次执行是否完毕。
17、进一步的,所述时长阈值为20ms-1000ms之间的数值。
18、进一步的,所述预设信号中的任意信号发生变化的频率高于第一设定阈值。
19、进一步的,所述预设信号包括车速信号、电流信号、动能回收信号以及电池充电信号;所述执行预设的业务逻辑包括:检查所述车速信号是否大于车速阈值、所述电流信号是否大于电流阈值、是否接收到所述动能回收信号以及是否接收到所述电池充电信号;
20、所述车载应用层信号处理方法还包括:
21、响应于所述车速信号大于车速阈值、所述电流信号大于电流阈值、接收到所述动能回收信号以及接收到所述电池充电信号,执行3d车模动能回收动画效果的更新。
22、进一步的,所述预设信号中的任意信号发生变化的频率低于第二设定阈值。
23、进一步的,所述业务逻辑包括检查各所述预设信号是否满足预设条件的逻辑。
24、进一步的,所述预设信号包括插入充电枪信号以及电池管理系统状态信号;所述执行预设的业务逻辑包括:检查所述插入充电枪信号是否为第一数据以及检查所述电池管理系统状态信号是否为第二数据或者第四数据;
25、所述车载应用层信号处理方法还包括:
26、响应于确定所述插入充电枪信号为第一数据且所述电池管理系统状态信号为第二数据,显示开始充电标识;
27、响应于确定所述插入充电枪信号为第一数据且所述电池管理系统状态信号为第四数据,显示充电已满标识。
28、进一步的,所述预设信号包括车速信号、电流信号、动能回收信号以及电池充电信号;
29、所述车载应用层信号处理方法还包括:
30、响应于所述车速信号大于车速阈值、所述电流信号大于电流阈值、接收到所述动能回收信号以及接收到所述电池充电信号,执行3d车模动能回收动画效果的更新。
31、第二方面,本申请还提供了一种车载应用层信号处理装置,包括:
32、第一执行模块,用于当第一次监听到多个预设信号中的任意信号发生变化时,执行预设的业务逻辑;
33、判断模块,用于响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕;
34、更新模块,用于响应于所述业务逻辑的一次执行完毕,更新针对所述业务逻辑的二次执行标志;
35、第二执行模块,用于响应于更新后的所述二次执行标志,再次执行所述业务逻辑。
36、第三方面,本申请还提供一种电子设备,所述电子设备包括:
37、一个或多个处理器;
38、存储装置,用于存储一个或多个程序;
39、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的车载应用层信号处理方法。
40、第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的车载应用层信号处理方法。
41、本申请公开的车载应用层信号处理方法,无论预设本文档来自技高网...
【技术保护点】
1.一种车载应用层信号处理方法,应用于车载应用层的应用,其特征在于,包括:
2.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕,包括:
3.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述二次执行标志包括预设的第二标志位,所述更新针对所述业务逻辑的二次执行标志,包括:
4.根据权利要求3所述的车载应用层信号处理方法,其特征在于,所述再次执行所述业务逻辑之前,还包括:
5.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述当第一次监听到多个预设信号中的任意信号发生变化时,执行预设的业务逻辑的同时还包括:开始计时;
6.根据权利要求5所述的车载应用层信号处理方法,其特征在于,所述时长阈值为20ms-1000ms之间的数值。
7.根据权利要求5所述的车载应用层信号处理方法,其特征在于,所述预设信号中的任意信号发生变化的频率高于第一设定阈值。
8.根据权利要求7所述的车载应用层信号处
9.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述预设信号中的任意信号发生变化的频率低于第二设定阈值。
10.根据权利要求9所述的车载应用层信号处理方法,其特征在于,所述预设信号包括插入充电枪信号以及电池管理系统状态信号;
11.一种电子设备,其特征在于,所述电子设备包括:
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一项所述的车载应用层信号处理方法。
...【技术特征摘要】
1.一种车载应用层信号处理方法,应用于车载应用层的应用,其特征在于,包括:
2.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述响应于再次监听到所述多个预设信号中的任意信号发生变化,判断所述业务逻辑的一次执行是否完毕,包括:
3.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述二次执行标志包括预设的第二标志位,所述更新针对所述业务逻辑的二次执行标志,包括:
4.根据权利要求3所述的车载应用层信号处理方法,其特征在于,所述再次执行所述业务逻辑之前,还包括:
5.根据权利要求1所述的车载应用层信号处理方法,其特征在于,所述当第一次监听到多个预设信号中的任意信号发生变化时,执行预设的业务逻辑的同时还包括:开始计时;
6.根据权利要求5所述的车载应用层信号处理方法,其特征在于,所述时长阈值为20m...
【专利技术属性】
技术研发人员:陈超,万为侗,何蕊西,
申请(专利权)人:成都赛力斯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。