CAN和CANFD数据写入.asc文件的dll

因为工作需要,需要做一些硬件不是CANoe的上位机(比如说周立功CAN,NI-CAN),上位机需要有记录数据的功能,所以用Qt制作了一个记录数据的dll,方便重复使用(因为有的客户指定了编程软件,所以我也没办法呀,没办法编一次就好)。
进入正题,本次以labview调用dll写入ASC文件为例。

下面先介绍一下文件

dll文件包含义

相关数据下载见文章尾部链接

如下图,红框里的是dll文件和.h文件,其他的都是Qt的一些库函数,因为自己懒,用Qt比较好diy。调用的时候需要把红框里的文件加载上,具体流程百度调用dll。这个dll不能换位置,只能把dll这个文件夹全部带过去才能用,如果是Qt调用,当我没说

labview调用示例

相关数据下载见文章尾部链接

如下图,这是一个调用示例

函数接口介绍

cpp 复制代码
//Timestamp:时间戳
//Channel:通道
//Dir    :发送接收(0:Rx,1:Tx)
//ID:报文ID
//DLC:报文dlc长度(0-15那个)
//DataLength:报文数据长度(0-64那个)
//data:报文数据
//type:报文类型(0:can ,1:canfd)
//此函数是将报文数据储存到文件里面
extern "C" ASCTEST_EXPORT uint8_t ASCsaveMsg(uint64_t Timestamp,uint8_t Channel,uint8_t Dir,uint32_t ID,uint8_t DLC,uint8_t DataLength,uint8_t *data,uint8_t type);

//file:保存文件路径
//此函数是打开文件句柄
extern "C" ASCTEST_EXPORT uint8_t ASCopenFile(char file[]);

//此函数是关闭文件句柄,用于保存,不调用会保存失败
extern "C" ASCTEST_EXPORT uint8_t ASCcloseFile();

上面说的够明显了吧,调用顺序ASCopenFile->ASCsaveMsg->ASCcloseFile;

视频展示

将CAN和CANFD数据保存为ASC的dll文件展示

缺陷

暂时只支持CAN和CANFD的标准帧报文保存,和CANoe保存的数据有略微差异,仅用于测试分析。如果有人需要

1:labview我可以将此工程制作为一个VI函数

2:有需要的可以留言,之后可能会加功能,比如说扩展帧

3:can通道记得从1开始

4:记录数据一开始的时间点是以ASCopenFile的时间点,如果需要准确的请获取到第一帧报文,去打开文件句柄,以后传输的时间戳减去第一帧的时间戳

下载链接

dll压缩包只包含dll相关数据,labview写入ASC压缩包包含dll和vi,不需要重复下载

下载链接

链接:https://pan.baidu.com/s/1CEWeVCrllF07geo9cSVAIw?pwd=hzr9

提取码:hzr9

--来自百度网盘超级会员V7的分享

需要定制化开发可以联系我,有问题也可以联系我。邮箱:liu_xiaoshuai@foxmail.com

相关推荐
YH行业报告分析1 小时前
2026半门式刮板取料机市场:封闭式料场改造驱动下的自动化散料装备升级
自动化
本人手速666+1 小时前
企业微信二次开发中的事件驱动架构:如何把外部事件变成内部流程
微信·自动化·企业微信·个人开发·微信开放平台
天远数科12 小时前
零信任架构实战:基于天远全能消金报告构建自动化信贷评估网关
运维·人工智能·架构·自动化
海宇AI14 小时前
微服务架构实战:基于海宇对外投资历史查询服务构建自动化合规审计网关
人工智能·微服务·架构·自动化
qq_4017004119 小时前
Qt QUrl 详解与代码示例
开发语言·数据库·qt
天远API20 小时前
零信任架构实战:基于天远单人婚姻查询构建自动化联合贷款审计网关
java·人工智能·架构·自动化
工业机器人视觉检测设备21 小时前
云汇智能金属网焊后剪切装置 非标自动化定制助力产线提质增效
自动化·自动化设备
2601_9639067821 小时前
桌面自动化工具|零代码录制自动化,无需联网本地离线用
运维·自动化
海宇AI21 小时前
零信任架构实战:基于海宇公安二要素认证即时版构建自动化灵活用工准入网关
运维·人工智能·架构·自动化
雨田言炎21 小时前
Qt的常用类QList--序列数据管理
嵌入式硬件·qt