在当今汽车电子系统的开发中,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方面技术的深入探讨的更多相关文章

  1. 腾讯技术分享:GIF动图技术详解及手机QQ动态表情压缩技术实践

    本文来自腾讯前端开发工程师“ wendygogogo”的技术分享,作者自评:“在Web前端摸爬滚打的码农一枚,对技术充满热情的菜鸟,致力为手Q的建设添砖加瓦.” 1.GIF格式的历史 GIF ( Gr ...

  2. 分享一次大厂的技术面试通过,却因学历被拒发 offer 的悲惨经历

    概述 今天心情很down,快周末了,说点不开心的事情给大家开心一下,上周面试心仪已久的大厂,技术面很顺利的通过一面/二面/三面,最后到HR面也很顺利,然后被问到学历(自考本科)后,HR 语气发生一些转 ...

  3. 聚焦 2021 NGK 新加坡区块链技术峰会,探讨DeFi未来新生态!

    2021年1月31日14时,备受行业关注的"2021 NGK 新加坡区块链技术峰会"如期举行.本次峰会由NGK官方主办,以"DeFi"为主题,探讨了区块链技术革 ...

  4. 前端资料QQ群交流

    转:https://github.com/jsfront/src/blob/master/qq.md 这本来是我QQ群内部的一份公共约定的日常交流规则,后来得到大伙的一致认可,并用实际行动来捍卫它,使 ...

  5. 【转】apache kafka技术分享系列(目录索引)

    转自:  http://blog.csdn.net/lizhitao/article/details/39499283   估计大神会不定期更新,所以还是访问这个链接看最新的目录list比较好 apa ...

  6. 【腾讯Bugly干货分享】总结一个技术总监的教训和经验

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/Ry-G0Nikh6m-h3ZVC2cLyQ 导语 20 ...

  7. 让互联网更快:新一代QUIC协议在腾讯的技术实践分享

    本文来自腾讯资深研发工程师罗成在InfoQ的技术分享. 1.前言 如果:你的 App,在不需要任何修改的情况下就能提升 15% 以上的访问速度,特别是弱网络的时候能够提升 20% 以上的访问速度. 如 ...

  8. iOS逆向工程,(狗神)沙梓社大咖免费技术分享。

    序言 简介:本文针对于广大iOS开发者,作为一名开发者,仅仅专注于一门语言可能已经不适用现在的市场需求,曾经因高薪和需求量巨大,而火爆一时的移动端开发者(Android,ios),如今的路却是不再那么 ...

  9. 微信团队分享:Kotlin渐被认可,Android版微信的技术尝鲜之旅

    本文由微信开发团队工程是由“oneliang”原创发表于WeMobileDev公众号,内容稍有改动. 1.引言   Kotlin 是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发( ...

  10. 网易技术分享:Nginx缓存引发的跨域惨案

    推荐:更多技术团队分享文章 关注:MAYOU18技术专栏 1. 前言 贵金属wap版直播间上线后,偶尔有用户反馈,在进入wap直播间的时候,出现空白页面,但是重新刷新又可以正常显示了.我们曾一度认为是 ...

随机推荐

  1. ABC243

    ABC224 D 题目大意 有一个九个点的无向图棋盘,上面有八个棋子,一次操作能将一个棋子沿边移到空点上,问将每个棋子移到与它编号相同的点最少几步. 解题思路 考虑使用 BFS. 用 string 存 ...

  2. dart中Set类型详解

    01==> Set 它的主要功能是去除重复的数组内容: Set是没有顺序且不能够重复的数组,所以不能够通过索引值去获取内容 var s = new Set(); s.add('苹果'); s.a ...

  3. 关于galaxy戒色的通知

    明天开始--一小段时间内辅以半退网 如果想打胶 就做100个卷腹 睡不着就吃褪黑素 恁还是多写写诗吧,恁现在这个精虫上脑的脑子连意识流都扛不住 恁还想写<阑山><莲天>< ...

  4. P3092 [USACO13NOV] No Change G 题解

    传送门 题解 思路 看到 \(1\le k\le16\),我们想到状压DP. 以每枚硬币是否被使用为状态,对其进行枚举. 令 \(dp_i\) 表示状态 \(i\) 下最多能支付到第 \(dp_i\) ...

  5. Sqoop2 - [01] 安装部署

    1.启动Hadoop集群 2.将Sqoop2的安装包上传到合适的目录中解压 tar -zxvf sqoop-1.99.7-bin-hadoop200.tar.gz 3.修改Hadoop的配置文件cor ...

  6. Kettle - 核心概念

    可视化编程 转换 步骤(Step) 跳(Hop) 元数据 数据类型 并行 作业 可视化编程 kettle 可以被归类为可视化编程语言(Visula Programming Languages,VPL) ...

  7. Zookeeper、Hadoop、Hbase的启动顺序以及关闭顺序

    启动顺序 Hadoop及hbase集群启动顺序 zookeepeer -> hadoop -> hbase 停止顺序 Hadoop及hbase集群关闭顺序 hbase -> hado ...

  8. P5356 [Ynoi Easy Round 2017] 由乃打扑克

    分块典题 左转数列分块入门2 一样的想法 排序+二分 但是发现我们只能求排名 于是二分答案然后分块+二分即可

  9. 【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(9)

    1.问题描述: 通过push token向鸿蒙手机推送一条通知,收到通知后,通知右侧不展示图片. 解决方案: 检查一下是否存在图片风控:https://developer.huawei.com/con ...

  10. python以及java环境搭建+解决不同版本环境共存问题

    1.搭建python环境 1.安装python3.9.7,选择自定义安装.将文件添加至环境路径,然后选择下一步. 2.默认.然后选择下一步. 3.选择适用于所有使用者,选择自己想要存放的路径,然后选择 ...