标签: capl

从命令提示符启动并运行 CANoe

是否可以从命令提示符和/或使用任何其他外部脚本启动和运行 Vector CANoe?

cmd can-bus capl canoe

6
推荐指数
1
解决办法
9451
查看次数

是否可以定义返回文本字符串的 CAPL 函数?

我在 Vector CANoe 中开发了 CAPL 脚本,我需要定义几个返回文本字符串的函数。在 C 中,我会这样写:

char * ErrorCodeToMsg(int code)
Run Code Online (Sandbox Code Playgroud)

或者

char [] ErrorCodeToMsg(int code)
Run Code Online (Sandbox Code Playgroud)

在 CAPL 中,两个定义都失败并带有parse error. 到目前为止,我想出的唯一可行的解​​决方案是:

variables {
  char retval[256];
}

void ErrorCodeToMsg(int code) {
  char [] msg = "Hello word";
  strncpy(retval, msg, 256);
}
Run Code Online (Sandbox Code Playgroud)

当然这很丑陋,因为每次调用都ErrorCodeToMsg需要两条语句而不是一条语句。有没有更好的办法?

string syntax capl

5
推荐指数
1
解决办法
2万
查看次数

CAPL是脚本语言还是编程语言?

我是Can Access编程语言的新手.在某些文档中,CAPL被描述为脚本.任何人都可以解释,为什么它被称为脚本?是编程还是脚本?

scripting capl

5
推荐指数
1
解决办法
6918
查看次数

如何在 CANoe/CAPL 中包含 .h 或 .dll 文件

我想在 CAPL(具体来说是 Visa32.dll、visa.h 或 sicl.h)中集成一个头文件 .h 或 .dll 文件来控制万用表 34461A。如何在 CANoe 中包含 .h 文件或 .dll 文件?我创建了一个名为万用表的 ECU 模块。谢谢,

dllimport header-files capl canoe

5
推荐指数
1
解决办法
1万
查看次数

使用 CAPL 在 CANoe 中通过 ISO-TP(传输协议)传输数据

使用 CAPL 和 CANoe 通过 CAN 上的 ISO-TP 传输大量数据。是否有例程可以处理嵌入在 CAPL 中的数据分段,还是我需要编写自己的解释?

can-bus capl canoe

3
推荐指数
1
解决办法
6898
查看次数

CAPL脚本中系统变量和环境变量之间有什么区别?

CAPL脚本中的系统变量和环境变量之间有什么区别?

env var sys capl difference

3
推荐指数
1
解决办法
2万
查看次数

CAPL 写入文本文件

我对 CAPL 语言还很陌生。因此,我在将数据写入 .txt 文件时遇到问题。这是我写的代码:

\n\n
    includes\n{\n\n}\n\nvariables\n{\n  message Generate_Num Gen;\n  message Logger Logs;\n  msTimer tim_100ms;\n  msTimer tim_500ms;\n  int time_over; // 500 ms flag.\n  dword handle=0;\n  float val=0;\n  long index=0;\n  int val_arr[512];\n}\n\non start \n{\n  time_over=0; \n  setWritePath("C:\\\\Users\\\\T\xc3\xbcrker\\\\Desktop\\\\soft_pro");\n  handle= openFileWrite("Log.txt",1);\n  Gen.Num_Data=1;\n}\n\non envVar Logger_Sw\n{   \n\n    if(@this)\n    {\n      setTimer(tim_500ms,500);\n      setTimer(tim_100ms,100);\n    }\n    else\n    {\n      cancelTimer(tim_500ms);\n      cancelTimer(tim_100ms);\n    }\n\n}\n\non envVar Save_txt\n{   \n  if(@Save_txt==1)\n    {\n      int i;\n      float val_n;\n      for(i=0;i<elcount(val_arr);i++)\n      {\n        val_n=val_arr[i];\n        writeProfileFloat("1","1",val_n,"Log.txt");\n      }\n    } \n}\n\non timer tim_100ms\n{\n  output(Gen);\n  Gen.Num_Data++; \n  setTimer(tim_100ms,100);\n}\n\non message Generate_Num\n{\n  if(time_over==1)\n  {\n   val=this.Num_Data;\n   val_arr[index]=val; …
Run Code Online (Sandbox Code Playgroud)

capl canoe

3
推荐指数
1
解决办法
2万
查看次数

使用 CAPL 发送消息/注入消息

我是 CANoe 和 CAPL 语言的新手。但是我想问你:我怎样才能在ECU的网络上用CAPL发送消息。例如:我想发送一个十六进制数(这是一个 ECU 的问题),然后我想看到这个问题的回答。

我不知道我是否很清楚,但如果您有任何答案,我将不胜感激。

capl canoe

2
推荐指数
2
解决办法
4万
查看次数

从Python调用CAPL函数

我正在使用CANalyzer,但找不到包含参数的CAPL函数的调用方法。如果我放不num进去functions_call.Call(num)

def call(num):
    print 'calling from CAN'
    x=int(num) 
    functions_call.Call()
    return 1
Run Code Online (Sandbox Code Playgroud)

python capl

1
推荐指数
1
解决办法
8250
查看次数

将科学记数法字符串中的数字转换为具有有限C类库的浮点数

我正在用CAPL编写一个程序(基于C并减去一些概念)来将包含以科学记数法显示的数字的字符串转换为浮点数(不一定要是浮点数,但我认为它是一个合适的类型为了这).例如:

-7.68000000E-06应转换为-0.00000768

我已经做了一些寻找这个并且atof()出现了很多,但CAPL不支持这个,所以我不能使用它.

CAPL中不支持的其他C概念的列表:

CAPL到C  - 支持表

更新:感谢大家的帮助.M. Spiller的答案被证明是最简单的解决方案.我接受了这个答案.

c scientific-notation type-conversion capl

0
推荐指数
1
解决办法
130
查看次数