0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

来看下CAPL都提供哪些获取当前时间函数吧!

冬至子 来源:车载网络测试 作者:懵懂的小白白 2023-05-19 14:24 次阅读

在自动化开发中,无论是CAN通信测试,还是网络管理测试,亦或是休眠唤醒等等存在时间相关的,都可能会使用相关的时间函数;今天主要介绍的就是获取当前时间,我们知道vector工具的最大优势就是稳定和精确度高,这体现在我们使用工具的方方面面,今天我们来介绍的就是获取的运行的相对时间,包含10微秒级和纳秒级,下面我们就来看下CAPL都提供哪些获取当前时间函数吧!

10微秒级

timeNow

图片

返回值:10ms级的CANoe工程启动到执行到该函数的时间;整数类型

常见用法:time_now_ms = timeNow()/100, time_now_ms就是CANoe启动到执行到该行的运行时间,单位为ms,一般来说大部分测试达到满足毫秒级即可,极个别需要精确到微秒甚至纳秒的时候我们才会使用其他方法。

timeNow :time_now_ms的最大值:2^32*10微秒=11小时55分钟49秒672毫秒96微秒;如果是长时间压力测试的时候使用该函数需要注意处理最大值,以免测试结果的误判。

timeNowint64 :如果是长时间压力测试的时候建议使用该函数。

timeNowFloat

图片

返回值:10ms级的CANoe工程启动到执行到该函数的时间;浮点类型

常见用法:time_now_ms = timeNow()/100, time_now_ms就是CANoe启动到执行到该行的运行时间,单位为ms,一般来说大部分测试达到满足毫秒级即可,极个别需要精确到微秒甚至纳秒的时候我们才会使用其他方法。

如果是长时间压力测试的时候使用该函数需要注意处理最大值,以免测试结果的误判。

timeDiff

图片

message:CAN报文 例如:message 0x100 msg;则msg就代表报文ID为0x100的报文,msg.dlc即为报文0x100的长度都可通过msg.xx进行设置(FDF/BRS/R0/R1等等参数),设置内容函数MessageTimeNS中的message介绍。

NOW:当前时间

返回值:报文m1到当前的时间差或者报文m1和报文m2之间的时间差。

单位:10微秒

diff = timeDiff(m100, now); 
diff = this.time - m100.time; 
//this代表当前时间

纳秒级

timeNowNS & timeNowInt64

图片

返回值:纳秒级的CANoe工程启动到执行到该函数的时间;整数类型

常见用法:time_now_ns =timeNowNS(), time_now_ns就是CANoe启动到执行到该行的运行时间,单位为ns,这里函数能够满足纳秒级的测试,满足更加精确的时间精度。

如果是长时间压力测试的时候使用该函数需要注意处理最大值,以免测试结果的误判。

MessageTimeNS

图片

message:CAN报文 例如:message 0x100 msg;则msg就代表报文ID为0x100的报文,msg.dlc即为报文0x100的长度都可通过msg.xx进行设置(FDF/BRS/R0/R1等等参数)

message 100 msg;
msg.DLC = 1;
msg.BYTE(0) = 0xff;
output(msg);

linFrame:LIN报文 参考上面

以报文为参数,其中包含CAN报文或者LIN报文,返回值为CANoe启动到当前函数的时间,单位为纳秒,精度相当的高,这个主要用于检查特定报文出现的时间,比如检查Autosar网络管理中的的重复报文出现的时间和时间差,可直接用当前函数去获取并进行检查。

以上是我们在使用CAPL编程中常用的获取当前时间和或者时间差函数!!!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CAN通信
    +关注

    关注

    3

    文章

    87

    浏览量

    17626
  • LIN
    LIN
    +关注

    关注

    4

    文章

    189

    浏览量

    39871
  • BRS
    BRS
    +关注

    关注

    0

    文章

    7

    浏览量

    3903
收藏 人收藏

    评论

    相关推荐

    labview如何获取当前时间毫秒数

    了MS:三、直接用字符串表示利用格式化日期/时间字符串函数可以把当前时间直接转换为字符串,利用字符串格式符,可以直接显示小数部分(毫秒),格式符与二中的类似:四、直接使用秒来处理前面几
    发表于 11-15 10:36

    用VI获取当前时间

    我刚刚学labview,遇到一个题目说编写一个VI获取当前时间,我没什么思路,求大侠指导下,谢谢
    发表于 09-25 10:55

    获取系统当前时间

    求助各位大神:用获取当前时间函数获取系统当前时间,为
    发表于 10-18 08:38

    LabVIEW公式节点中如何获取系统当前时间

    想让公式节点中的代码在运行1分钟后自动停止,如何实现?如何在公式节点中如何获取系统当前时间?请哪位帮忙解决一下,谢谢!
    发表于 11-14 11:29

    用什么函数,可以获取NTP网络时间

    网成功才能获取精确时间 (配网成功返回一个值,添加一个标志位和变量,记住当前是否联网的状态)。第二步:调用gizwitsGetNTP函数时不能一直调用,所以我们这里设置两个定时器,(定
    发表于 08-27 08:25

    请问STM32如何获取当前时间格式?

    请问STM32如何获取当前时间格式?
    发表于 11-26 07:45

    如何在RT1170-EVK上获取当前时间

    我想在我的 RT1170-EVK 上获取自标准纪元 (00:00 01-01-1970) 以来的当前时间。换句话说,我想在我的板上使用 time.h 中的 time() 函数的功能。这
    发表于 03-27 08:16

    C#教程之获取当前时间

    C#教程之获取当前时间,很好的C#资料,快来学习吧。
    发表于 04-20 10:59 11次下载

    C语言教程之获取当前日期与时间

    C语言教程之获取当前日期与时间,很好的C语言资料,快来学习吧。
    发表于 04-25 16:09 0次下载

    基于时间衰减协同偏好获取方法

    针对现有的推荐系统多采用近邻用户的偏好行为来预测当前用户的偏好,而不考虑用户的偏好会随着时间的变化而改变,影响了推荐准确率的问题,提出了一种基于时间衰减与偏好波动的协同偏好获取方法。首
    发表于 12-15 16:14 0次下载

    基于AUTOSAR的应用层如何获取准确的时间戳吗?

    数据流1表示StbM主动调用TriggerCustomer提供函数接口来完成时间同步,当前主要应用场景为OS Schedule Table的同步;
    的头像 发表于 09-21 14:40 1258次阅读

    什么是CAPL编程?

    与Vspy的"C Code Interface"一样;在CANoe的使用中,一样提供了我们进行二次编程开发的工具——”CAPL Browser”。
    的头像 发表于 06-18 10:13 1559次阅读
    什么是<b class='flag-5'>CAPL</b>编程?

    如何使用arduino从卫星获取当前时间

    电子发烧友网站提供《如何使用arduino从卫星获取当前时间.zip》资料免费下载
    发表于 06-29 09:29 0次下载
    如何使用arduino从卫星<b class='flag-5'>获取</b><b class='flag-5'>当前</b><b class='flag-5'>时间</b>

    CAPL在诊断中的应用,你值得了解!

    的过程中相信每位工程师都或多或少的要和“CAPL”打交道。学好CAPL的用法可以让我们更加高效、便捷地使用CANoe。本文就CANoe中关于诊断的CAPL函数进行介绍。
    的头像 发表于 09-07 08:27 477次阅读
    ​<b class='flag-5'>CAPL</b>在诊断中的应用,你值得了解!

    CAPL脚本使用介绍

    CAPL中也有类似于C语言中的回调函数的机制,如检测报文周期和错误帧的函数中就可以使用,当周期超界或者总线出现错误帧就会自动调用回调函数执行一些操作
    的头像 发表于 04-01 11:23 327次阅读