问题标签 [capl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gcc - 使用 capl 中的计时器生成随机数
我试图使用计时器在 CAPL 程序(类似于 C 语言)中生成一个随机数。假设我有一个计时器 X 我启动它
现在我只需要一个 300 毫秒到 20 秒之间的随机数,分辨率为 500 毫秒。CAPL 有一个名为 random() 的内置函数来执行此操作。
我喜欢
现在我怎样才能确保我只获得一个分辨率为 500 毫秒的随机值?
有什么建议么?
c - 将整数传递给以枚举作为输入参数的函数
我有个问题
如果我们有以下情况会发生什么:
使用功能测试时,如果我像下面这样使用它会发生什么:
应该映射到最近的枚举值,还是需要在函数实现中处理?
capl - 将输出记录到 CAPL 中的文件
有没有一种简单的方法可以将我写入的内容写入写入窗口并将其记录到文件中?或者我是否需要手动单独创建一个字符数组并打开一个文件以将 char[] 写入?我希望至少能够使用正则表达式写入文件,但我没有从文档中找到太多有用的信息。
cmd - 从命令提示符启动和运行 CANoe
是否可以从命令提示符和/或使用任何其他外部脚本启动和运行 Vector CANoe?
automation - CANoe 中的连续消息传输
我使用 Vector 软件为 CANoe 中的测试自动化创建了一个测试环境,对于大多数测试用例,我需要传输连续的消息。
前任。Msg1.Signal1 = 1 3 秒
和
Msg1.Signal1 = 4 2 秒。
我浏览了帮助内容和一些在线可用的 pdf,可以为此编写以下逻辑:
然而,程序的整个运行时间大约为 200 毫秒,因此在 3 秒内没有传输消息。用 2 秒的时间段重写了类似的代码。有人可以告诉我代码有什么问题或如何进一步实现这一目标。
提前致谢。问候, 维维克
sockets - 通过套接字向 CANalyzer CAPL 应用程序发送命令
我需要从外部应用程序(在 java 中,如果重要的话)控制一个用 CAPL 为 CANalyzer 编写的复杂 CAN 模拟器。
模拟器已经编写好了,它有一些按钮可以执行我需要的功能。
我现在需要修改这个模拟器,让它接受来自自定义应用程序的命令,大概是通过套接字连接(但我对其他 IPC 方式持开放态度)。
我应该能够向 Simulator 发送消息,并且它应该就像按下了某个界面按钮一样。
这样的事情可以(容易)完成吗?如果是这样:我在哪里可以找到相关文件?
can-bus - 定时器的 CAPL 编程使用作为延迟
我一直在编写一个 CAPL 脚本,该脚本会在一定延迟后在每个频道(2 个没有)上发送消息。我想使用SetTimer()和mstimer::isRunning函数生成以下延迟。我可以使用 setTimer 函数,但我不知道如何使用mstimer::isRunning。代码如下所示:
capl - 具有消息事件处理程序的多个 CAPL 文件
我在 CANoe 中创建了一个 CAN 模拟系统。我添加了两个具有 ID 1 的 CAN 消息处理程序的 capl 文件。现在,如果我收到 ID 为 1 的 CAN 消息,将按哪个顺序调用处理程序?
谢谢
string - 是否可以定义返回文本字符串的 CAPL 函数?
我在 Vector CANoe 中开发 CAPL 脚本,我需要定义几个返回文本字符串的函数。在 C 中,我会这样写:
或者
在 CAPL 中,两个定义都以parse error
. 到目前为止,我想出的唯一可行的解决方案是:
当然这很丑陋,因为每次调用都ErrorCodeToMsg
需要两条语句而不是一条。有没有更好的办法?
state-machine - 在 CAPL 中重新使用状态机
我在 CAPL 中制作了一个非常简单的状态机,它告诉我信号何时变高以及它在关闭之前保持开启的时间。现在我还有大约 70 个信号,我需要知道信号何时开始以及在进入 OFF 之前它保持 ON 的时间。我实现的代码在这里。
我的问题:有没有办法模板化这个状态机的功能,所以我不必在代码中的任何地方实现它。