Kvaser五通道数据记录仪T脚本使用分享

标签:
总线记录仪汽车电子总线离线功能总线诊断仪 |
分类: CAN总线kvaser硬件 |
Kvaser Memorator Pro作为Kvaser CAN中的高端产品具备离线采集的记录功能,同时在其Pro专业版中更是支持通过T脚本进行事件控制。
在官方CANLIB包下有个TRX工具,用于T脚本编译生成可下载进 Memorator Pro的可执行文件。
TRX工具导入原程序文件,start运行程序会自动生成工程文件和可执行文件,start需要通过usb连接Memorator Pro。若出现错误无法start情况可以重启TRX工具。
‘xxx.t’原程序文件,’xxx.tprj’工程文件,’xxx.txe’可执行文件。
T脚本语法类似C语言,但其程序主要靠钩子以及预定的函数实现,其运行顺序与代码出现顺序无关,但同类型钩子的运行顺序与出现顺序有关。
运行顺序为 程序启动==》初始化变量==》执行start钩子==》程序运行==》执行stop钩子。
通常当设备上电就执行初始化和start钩子,下电就执行stop钩子。
根据个人理解T脚本为事件触发型语言,也就是当某个定义好的事件发送后,执行对应钩子中的语句。
例子:语句中有
on CanMessage <0>
0x100{…},当通道0接收到ID=0x100的报文时,将执行"{“,”}"中语句。
T脚本中预定了一些实时库类型和函数,通过这些类型和函数可以处理常用的事件。
下面demo实现CAN转CAN FD
// 函数声明
int canWrite(int ch2, const CanMessageFd msg);
// 变量初始化
variables {
on start {
}
on stop {
}
// 当CAN1接收到ID=0x100时,将数据转为CANFD由CAN2发出ID=0x105
on CanMessage 0x100
{
// 声明CANFD信息变量
}
然后拔掉USB,给设备channel 1供电(离线记录模式),此时设备中的T脚本会自动运行。
Kvaser Memorator Professional 5xHS是一个5通道、高性能的CAN(控制器区域网络)总线接口和独立的数据记录器。用户只需要使用一个设备,就可以监视和收集多达5个CAN通道的数据。独立模式将把数据记录到SD卡。接口模式通过USB连接到个人电脑。使用Kvaser的Memorator配置工具进行配置后,Memorator Professional 5xHS还能够运行使用Kvaser t编程语言编写的用户开发的脚本。同时提供创建t程序的指南。如果对这个编程有兴趣请联系广州智维技术。