栏目导航
CAN总线报文数据一致性校验
发表时间: 2024-10-13 07:44:04 作者: 工程案例
比方ECU1接纳ECU2宣布的一帧0x100报文,协议层是不会区别是ECU1发的,仍是不合法接入OBD的CAN盒发的?假如ECU1接纳到非ECU2宣布的0x100报文岂不是很风险?
比方ECU1仍是接纳ECU2宣布的一帧0x100报文,可是因为某些奥秘原因(程序跑飞了)导致ECU2挂死或许掉线无效?CAN通讯是一种播送方法的通讯方法,天然协议层是没办法做到数据合法性的校验,这部分工作需要应用层来完结。由此就呈现了RollingCoun
r与Checksum。这两个东西如同也是功用安全的一部分,本期仅仅介绍这两个东西的原理,不对功用安全做过多评论。
。如上图,从bit52到bit55是RollingCounter,取值规模0~15,ECU没发一次主动累加,满15就归零。从bit56到bit63(byte8)都是Checksum,取值规模0x00~0xFF,用来表明该条报文的校验值。
关于判别发送报文ECU有没有挂死很简略,只要在接纳端对RollingCounter进行判别,几个周期内协议栈上的buff没有正真取得更新则就能判别为节点反常。关于报文合法性的判别则就要担任得多,且会有各种把戏
当ECU2宣布0x100之前,会对RollingCounter累加,而且经过核算包括RollingCounter的前七个字节的CRC值,填充到数据域的第8个字节;ECU1接纳到0x100的时分运用相同的校验算法,核算数据域的前7个字节,而且与第8个字节发送源核算的CRC值作比较。假如两者相同,则数据合法。
声明:本文内容及配图由入驻作者编撰或许入驻协作网站授权转载。文章观念仅代表作者自己,不代表电子发烧友网态度。文章及其配图仅供工程师学习之用,如有内容侵权或许其他违规问题,请联络本站处理。告发投诉
测验内容及解决方案 /
些高速串行信号的测验丈量方法和简略的原理性介绍,合适初学者运用。PS。这其间说到的
些丈量设备现在现已晋级为最新的仪器设备,可是测验的原理和技能仍是能够让我们闲
都选用手艺编程来完成。导致代码结构冗杂,且功率不高。使用VxWorks的反常处理机制,结合RISC CPU的特性.设
都选用手艺编程来完成,导致代码结构冗杂,且功率不高。使用VxWorks 的反常处理机制,结合RISC CPU 的特性,规划实
都选用手艺编程来完成。导致代码结构冗杂,且功率不高。使用VxWorks的反常处理机制,结合RISC CPU的特性.规划
(Availability)和网络分区忍受(Partition Tolerance)三个特性中的两个。
测验 /
测验 /
测验? /
测验体系 /
Ubuntu 24.04 在 BPI-F3 上经过 SD 卡装置并从 NVME 运转
《DNK210运用指南 -CanMV版 V1.0》第十五章 按键中止试验