问题标签 [canalyzer]

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.

0 投票
2 回答
11023 浏览

can-bus - 使用 CAPL 和 CANalyzer 在按钮按下时发送周期性 CAN 信号

我正在尝试将一组 CAN 帧发送到 CAN 总线。我使用 CAPL 进行编程,使用 CANalyzer8.5 进行模拟,使用面板设计器创建按钮。我的要求是首先使用 PANEL 设计器创建一个按钮。只有在按下按钮时,它才会开始向总线发送周期性的 CAN 帧。我对如何实现它有点困惑。到目前为止,我已经设法使用 CAPL 编写了两个单独的程序。第一个程序在启动时定期发送数据。第二个代码在按下按钮时仅发送一次数据。我想合并两个代码以在按下按钮时开始定期发送。

第一个代码

第二代码

如前所述,当我按下按钮时,它应该开始定期发送 CAN 帧。但问题是,我不能在函数内调用函数,如下所示:

请给我建议。谢谢你

0 投票
2 回答
2367 浏览

can-bus - ELM327 监控所有 - CAN 消息不是 8 字节长

标准 CAN (ISO 15765-4) OBD 要求所有消息都有 8 个数据字节 - (ELM327 文档)

用蓝牙 ELM327 从我的车上读取我收到的消息并非全部为 8 个字节长。

这是配置:

输出 :

这里大多数消息都是正确的(3 字节 ID + 1 字节 DLC + 8 字节数据),但有些消息更短,有时我收到的消息更长。这些正常吗?如果没有,它可能来自哪里的任何想法?

0 投票
2 回答
5246 浏览

signals - 将信号值放入 CAPL 中的变量中

我正在尝试将信号值(来自 DBC 文件)提取到变量中,但我收到消息“必须是常量表达式”。如果我尝试添加类似的过滤器.DefaultValue,它可以工作,但这不是我想要的值。我想要调用此CAPL函数时的信号值。这是一个例子:

float Cell_Voltage = Mc00_UCell00;(这是我得到错误的地方必须是常量表达式)

float Cell_Voltage = Mc00_UCell00.DefaultValue;(这可行,但我不想要默认值)

是否有过滤器来提取信号的当前值Mc00_UCell0

0 投票
2 回答
774 浏览

panel - 如何从 CAPL 更改 CANalyzer 面板中开关/指示器元素的路径图像属性?

我在 CANalyzer 中使用 Switch/Indicator Panel 元素通过图像可视化某些系统状态。我想通过在测量设置中的程序节点内配置的 CAPL 程序来更改开关/指示器获取此图像的路径。那么,有没有办法从 CAPL 更改开关/指示器面板元素的“图像路径”之类的属性?

0 投票
1 回答
135 浏览

panel - 带有矢量面板设计 v11 的透明按钮?

可以在Vector Panel Design 11版中配置透明按钮,这样我可以在按钮下看到图片,但根本看不到按钮?

0 投票
1 回答
1925 浏览

can-bus - 使用 Canalyzer 上的 Capl 脚本以编程方式设置控制位置属性

我使用 Vector Panel Designer 设计了一个面板,因此我可以在 CANAlyzer 中显示它。

现在我正在尝试根据 CAN 信号的值设置 Picture Box 控件的位置。

我尝试了几种选择,但没有成功。我的面板称为“ObjectsPanel”,而图片框控件称为“Point1”。这些是我测试过的一些选项:

0 投票
2 回答
2898 浏览

capl - 如何在 CAPL 中插入“on key”重播块

我想知道是否可以创建一个 CAPL 代码,通过使用“on key”功能,用户可以: - 激活重播模式(.asc 文件) - 在其上激活过滤器 - 额外激活特定信号(不存在于 asc 文件中) - 停用重播模式 - 停用特定信号 - 激活或停用替代特定消息和/或跟踪

详细地说,目前我正在使用这个:

如果不清楚,我可以更好地解释我的要求:)

提前谢谢你^^干杯

0 投票
1 回答
247 浏览

canalyzer - 从命令提示符更改数据库

我可以通过一个简单的命令提示符启动 canalyzer
>CANw64.exe

我也可以加载配置
>CANw64.exe config_file.cfg

但我找不到是否可以从提示更改数据库,我试过了
>CANw64.exe config_file.cfg database.dbc

但它不起作用。我收到错误消息:
The specified file contains an invalid configuration

你知道我该如何解决这个问题吗?

0 投票
1 回答
3813 浏览

can-bus - 如果消息是由交互式生成器块生成的,如何修改 CAPL 中的消息数据?

我正在使用 CANalyzer。我正在使用 Interactive Generator 块传输 CAN 消息。我使用 IG 手动修改传输消息中的信号。每次发送消息时,我都需要自动计算校验和(消息中的最后一个字节)。校验和是根据消息中所有先前的数据字节计算的(消息总是 8 个字节长)。IG 没有选择这样做。

我需要: 1. 使用 IG 手动设置信号。2.根据前面数据字节的值自动计算最后一个数据字节的值。

我尝试用 CAPL 编写简单的代码,但没有成功。我将 CAPL 程序节点放在配置窗口中的 IG 节点之后,并在 CAPL 脚本中写入消息事件:

消息正在传输,但不遵守 IG 中设置的 Tx 周期(消息尽可能快地传输)。

我以为我捕获了从 IG 生成的消息,对其进行修改并发送到 CAN 总线。

有人可以帮忙吗?我是CAPL的初学者。

谢谢

0 投票
1 回答
280 浏览

python - “调用的对象已与其客户端断开连接” win32com.client.Dispatch('CANalyzer.Application')

我有一个 python 代码启动 CANalyzer 并在计时器线程内的 n 秒后停止它(由用户使用 tkinter GUI 定义)。这是代码:

然后在线程中:

不幸的是,400 秒后有一种超时,事实上,我得到了这个错误(-2147417848, 'The object invoked has disconnected from its clients.', None, None)。我怎样才能避免这个问题?有没有类似保命的东西?我需要在测试中运行 CANalyzer 超过 10 分钟,所以这个错误真的很烦人。

谢谢