康谋分享 | ADTF在CAN方面技术的深入探讨
在当今汽车电子系统的开发中,CAN总线作为车辆内部通信的骨干,承载着大量关键信号的传输。确保这些信号的高效、准确处理,对于车辆系统的稳定性和可靠性至关重要。
一、Signal Config Filter Editor
信号配置过滤器编辑器(Signal Config Filter Editor,简称SCFE),是ADTF(Automotive Data and Time-Triggered Framework)设备工具箱3中的高效组件,它允许我们从总线数据库文件中选择信号和参数,并将它们映射到为CAN、CAN FD或FlexRay等配置的编解码器过滤器的引脚上,如图1所示。

图1:SCFE
SCFE支持图形界面操作,用于配置编解码器过滤器。通过它,我们可以创建新的映射文件,选择信号,并将其映射到输出引脚上,从而实现对汽车中各种信号的解码和编码,如图2所示。

图2:SCFE操作界面
SCFE的主要功能包括:
- 从总线数据库中选择信号和参数,实现个性化配置。
- 将选定信号映射到输入或输出引脚,实现信号的精确控制。
- 生成映射文件,定义信号与引脚的映射关系,便于管理和复用。
- 设置引脚属性,包括通道、时间戳、延迟和打包等,以适应不同的通信需求。
- 编辑信号属性,如位长、校正因子和默认值,确保信号的准确性。
- 定义结构体和数组,使得多个信号可以作为一个整体进行处理。
- 设置触发器,根据特定条件控制信号的发送时机。
- 提供配置检查功能,帮助用户发现并修正潜在的错误。
二、快速原型制作
在ADTF Device Toolbox 3工具箱中,提供多个组件进行总线服务、解析、追踪可视化和处理等功能。结合SCFE组件功能,我们可以简易更快搭建工程,实现总线数据的解析和处理。比如搭建CAN FD 信号进行DBC编译工程,如图3所示。

图3:CAN FD DBC Config Encoder工程
在SCFE中可以信号引脚,属性等功能进行配置,如下图4所示。

图4:SCFE配置
运行效果图5所示:

三、数据库解析SDK
在ADTF Device Toolbox 3工具箱中,进一步提供了自定义总线数据库解析器SDK,如图6所示。支持开发者实现和部署针对特定总线通信协议的数据库解析服务。

图6:数据库解析SDK
这一SDK具备以下特点:
- 支持特殊文件格式的解析,满足非标准通信数据库文件的读取需求。
- 通过实现特定接口,构建灵活的解析服务,加载和处理通信规范。
- 采用接口驱动设计,定义了数据库加载器、特定于总线的数据库接口和DBC数据库解析接口,确保兼容性和功能实现。
- 通过数据库注册表管理不同总线类型的数据库加载器实例,确保数据库文件的正确加载和解析。
ADTF Device Toolbox 3通过Signal Config Filter Editor(SCFE)和数据库解析SDK,为汽车电子领域总线方面提供了一套工具链。在汽车研发阶段,SCFE用于配置信号,测试和验证通信系统的性能;在车辆故障诊断中,SCFE助力快速定位问题信号,提升诊断效率;在系统集成过程中,SCFE确保不同系统间的信号正确交互,避免通信冲突。这些工具不仅提高开发效率,也确保汽车电子系统的稳定性和可靠性。
康谋分享 | ADTF在CAN方面技术的深入探讨的更多相关文章
- 腾讯技术分享:GIF动图技术详解及手机QQ动态表情压缩技术实践
本文来自腾讯前端开发工程师“ wendygogogo”的技术分享,作者自评:“在Web前端摸爬滚打的码农一枚,对技术充满热情的菜鸟,致力为手Q的建设添砖加瓦.” 1.GIF格式的历史 GIF ( Gr ...
- 分享一次大厂的技术面试通过,却因学历被拒发 offer 的悲惨经历
概述 今天心情很down,快周末了,说点不开心的事情给大家开心一下,上周面试心仪已久的大厂,技术面很顺利的通过一面/二面/三面,最后到HR面也很顺利,然后被问到学历(自考本科)后,HR 语气发生一些转 ...
- 聚焦 2021 NGK 新加坡区块链技术峰会,探讨DeFi未来新生态!
2021年1月31日14时,备受行业关注的"2021 NGK 新加坡区块链技术峰会"如期举行.本次峰会由NGK官方主办,以"DeFi"为主题,探讨了区块链技术革 ...
- 前端资料QQ群交流
转:https://github.com/jsfront/src/blob/master/qq.md 这本来是我QQ群内部的一份公共约定的日常交流规则,后来得到大伙的一致认可,并用实际行动来捍卫它,使 ...
- 【转】apache kafka技术分享系列(目录索引)
转自: http://blog.csdn.net/lizhitao/article/details/39499283 估计大神会不定期更新,所以还是访问这个链接看最新的目录list比较好 apa ...
- 【腾讯Bugly干货分享】总结一个技术总监的教训和经验
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/Ry-G0Nikh6m-h3ZVC2cLyQ 导语 20 ...
- 让互联网更快:新一代QUIC协议在腾讯的技术实践分享
本文来自腾讯资深研发工程师罗成在InfoQ的技术分享. 1.前言 如果:你的 App,在不需要任何修改的情况下就能提升 15% 以上的访问速度,特别是弱网络的时候能够提升 20% 以上的访问速度. 如 ...
- iOS逆向工程,(狗神)沙梓社大咖免费技术分享。
序言 简介:本文针对于广大iOS开发者,作为一名开发者,仅仅专注于一门语言可能已经不适用现在的市场需求,曾经因高薪和需求量巨大,而火爆一时的移动端开发者(Android,ios),如今的路却是不再那么 ...
- 微信团队分享:Kotlin渐被认可,Android版微信的技术尝鲜之旅
本文由微信开发团队工程是由“oneliang”原创发表于WeMobileDev公众号,内容稍有改动. 1.引言 Kotlin 是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发( ...
- 网易技术分享:Nginx缓存引发的跨域惨案
推荐:更多技术团队分享文章 关注:MAYOU18技术专栏 1. 前言 贵金属wap版直播间上线后,偶尔有用户反馈,在进入wap直播间的时候,出现空白页面,但是重新刷新又可以正常显示了.我们曾一度认为是 ...
随机推荐
- Kotlin:【标准库函数】with、also、takeif、takeUnless
- Docker基础命令(安装和创建管理容器)
docker ps -a 查看容器 docker inspect c008 使用 inspect 命令查看镜像详细信息,包括制作者.适应架构.各层的数字摘要等.
- JVM虚拟机中的内存区域
- 2025-01-22:使二进制数组全部等于 1 的最少操作次数Ⅱ。用go语言,给定一个二进制数组 nums,你可以对数组进行以下操作任意次(包括0次): 选择任何一个下标 i,并将从该下标开始到数组末
2025-01-22:使二进制数组全部等于 1 的最少操作次数Ⅱ.用go语言,给定一个二进制数组 nums,你可以对数组进行以下操作任意次(包括0次): 选择任何一个下标 i,并将从该下标开始到数组末 ...
- ChatGPT 背后的英雄——AI芯片
本文分享自天翼云开发者社区<ChatGPT 背后的英雄--AI芯片>,作者:w****n AI芯片能为人工智能应用提供所需的基础算力:按技术架构主要分为GPU.FPGA和ASIC.Chat ...
- linux mint安装kafka,及flume与kafka整合
需要软件 jdk1.8(jdk-8u131-linux-x64.rpm) zookeeper (zookeeper-3.4.10.tar.gz) kafka 2.11-2.0.0 flume1.8.0 ...
- Leetcode 765 情侣牵手 / Hetao-013 翅膀打结 题解 [ 黄 ] [ 并查集 ] [ BFS ] [ 贪心 ]
经典的连通块题,幸好我之前在 leetcode 看过原. 转化 首先观察到一对cp无论是男在前,还是女在前,都视为配对成功,对答案无影响. 因此,我们可以把一对情侣赋同一个编号,直接加一除以二即可. ...
- flutter-构造方法给数组list默认空值
1 class NewstStyle extends StatelessWidget { 2 final List<DkCenterUpload> upload; 3 const News ...
- 在 GitLab CI/CD 中使用内置的容器镜像库
配置 Docker-in-Docker Docker-in-Docker (dind) means: 你应该注册一个 Docker executor 或 Kubernetes executor 执行器 ...
- 发那科机器人R2000iC齿轮箱维修方法步骤归纳
一.发那科机器人R2000iC齿轮箱常见故障类型及原因 齿轮磨损:长时间的重载工作或润滑不良可能导致齿轮磨损,表现为噪音增大.振动加剧等. 轴承故障:轴承承受了齿轮箱的径向和轴向载荷,其故障可能导致齿 ...