您现在的位置:智能制造网>技术首页>技术交流

Kvaser Memorator Pro的T脚本使用

2023年12月14日 11:34来源:广州智维电子科技有限公司 >>进入该公司展台人气:160

图片4.png

Kvaser Memorator Pro作为Kvaser CAN中的产品具备离线采集的记录功能,同时在其Pro专业版中更是支持通过T脚本进行事件控制。

T脚本编辑工具

图片5.png


CANLIB包下有个TRX工具,用于T脚本编译生成可下载进 Memorator Pro的可执行文件

图片6.png


TRX工具导入原程序文件,start运行程序会自动生成工程文件和可执行文件,start需要通过usb连接Memorator Pro。若出现错误无法start情况可以重启TRX工具。

‘xxx.t’原程序文件,’xxx.tprj’工程文件,’xxx.txe’可执行文件。

T脚本代码案例

T脚本语法类似C语言,但其程序主要靠钩子以及预定的函数实现,其运行顺序与代码出现顺序无关,但同类型钩子的运行顺序与出现顺序有关。

运行顺序为 程序启动==》初始化变量==》执行start钩子==》程序运行==》执行stop钩子。

通常当设备上电就执行初始化和start钩子,下电就执行stop钩子。

图片7.png


根据个人理解T脚本为事件触发型语言,也就是当某个定义好的事件发送后,执行对应钩子中的语句。
例子:语句中有 on CanMessage<0>0x100{…},当通道0接收到ID=0x100的报文时,将执行"{“,”}"中语句。

图片8.png


T脚本中预定了一些实时库类型和函数,通过这些类型和函数可以处理常用的事件。

图片9.png


下面demo实现CAN转CAN FD

// 函数声明

int canWrite(int ch2, const CanMessageFd msg);

// 变量初始化

variables {

 const int ch1 = 0;  

 const int ch2 = 1;

}

on start {

// 确保通道处于Off状态,才能配置通道

 canBusOff(ch1);  

 canBusOff(ch2);

 // 通道0(CAN1)配置

 canSetBitrate(ch1,canBITRATE_500K);

 canSetBusOutputControl(ch1,canDRIVER_NORMAL);

 canBusOn(ch1);

 // 通道1(CAN2)配置

 canSetBusParams(ch2, canFD_BITRATE_500K_80P, 0, 0, 0, 0);

 canSetBusParamsFd(ch2, canFD_BITRATE_2M_80P, 0, 0, 0);

 canSetCommunicationMode(ch2, canMODE_CAN_FD);

 canSetBusOutputControl(ch2,canDRIVER_NORMAL);

 canBusOn(ch2);

}

on stop {

 canBusOff(ch1);

 canBusOff(ch2);

}

// 当CAN1接收到ID=0x100时,将数据转为CANFD由CAN2发出ID=0x105

on CanMessage0x100

{

// 声明CANFD信息变量

 CanMessageFd MsgFd;

 MsgFd.id =0x105;

 MsgFd.dlc = 8;

 MsgFd.flags = canFDMSG_FDF;

 MsgFd.data[0] = this.data[0];

 MsgFd.data[1] = this.data[1];

 MsgFd.data[2] = this.data[2];

 MsgFd.data[3] = this.data[3];

 MsgFd.data[4] = this.data[4];

 MsgFd.data[5] = this.data[5];

 MsgFd.data[6] = this.data[6];

 MsgFd.data[7] = this.data[7];

 // 调用发送函数

 canWrite(ch2,MsgFd);

}

通过TRX生成可运行文件后,通过对应型号的Kvaser Memorator Pro tool将T脚本程序下载进设备中。
然后拔掉USB,给设备channel 1供电(离线记录模式),此时设备中的T脚本会自动运行。

图片10.png


使用CANking来监控T脚本在设备中的实际效果。

图片11.png


图片12.png


了解更多信息,请搜索广州智维电子科技联系购买;




关键词:CAN
全年征稿/资讯合作 联系邮箱:1271141964@qq.com
  • 凡本网注明"来源:智能制造网"的所有作品,版权均属于智能制造网,转载请必须注明智能制造网,https://www.gkzhan.com。违反者本网将追究相关法律责任。
  • 企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
  • 本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。


编辑精选

更多


宣传样本推荐图书

旗下子站

工控网机器人仪器仪表物联网3D打印工业软件金属加工机械包装机械印刷机械农业机械食品加工设备制药设备仓储物流环保设备造纸机械工程机械纺织机械化工设备电子加工设备水泥设备海洋水利装备矿冶设备新能源设备服装机械印染机械制鞋机械玻璃机械陶瓷设备橡塑设备船舶设备电子元器件电气设备



关于我们|本站服务|会员服务|企业建站|旗下网站|友情链接| 兴旺通| 产品分类浏览|产品sitemap

智能制造网 - 工业4.0时代智能制造领域“互联网+”服务平台

Copyright gkzhan.comAll Rights Reserved法律顾问:浙江天册律师事务所 贾熙明律师

客服热线:0571-87756395加盟热线:0571-87759904媒体合作:0571-89719789

客服部:编辑部:展会合作:市场部:

关闭