q1:ecu从休眠到网络唤醒时间怎么测?
答:对于can网络,ecu从休眠到网络唤醒时间的测试方法如下:
t0时刻,使用仿真设备(canoe/pcan/zlg等)发送一帧或者连续多帧有效的网络管理报文;
t0~t1期间,由于ecu休眠(主芯片断电,不考虑低功耗情况),controller关闭,ecu不能接收仿真设备发送的报文,所以,此期间仿真设备发送的报文,ecu无法应答而出现错误帧(no ack);
t1时刻,ecu主芯片供电,程序运行,controller恢复正常工作模式(transceiver也处于正常工作模式),可以接收报文;
t2时刻,识别到有效唤醒源(有效网络管理报文),通信打开,ecu外发第一帧报文。如果节点的网络类型是passive mode,第一帧外发报文是应用报文;如果节点的网络类型非passive mode,第一帧外发报文是网络管理报文。
所以,ecu从休眠到唤醒的启->止时间 = t0 -> t2,测试时计算此时间差值(t2-t0)是否满足需求。注意,t0时刻是指第一帧错误帧时刻。
上述时序如下所示:
提示:仿真设备为什么发送多帧网络管理报文?如果transceiver没有pn(partial network)功能,不能识别网络管理报文,第一帧网络管理报文只是激活sbc,完成主芯片的供电任务,而没有被ecu有效接收,则需要第二帧网络管理报文唤醒节点网络。
q2:节点被动唤醒进入rms状态,rmb需要置位吗?
答:不需要。节点被动唤醒(收到其他节点的网络管理报文),由bsm(bus sleep mode)进入rms(repeat message state),此时cbv(control bit vector)值 = 初始值,而cbv的初始值为0x00,如下所示:
如果在nos(normal operation state)/rss(ready sleep state )主动请求进入rms,即:主动调用cannm_repeatmessagerequest()接口,rmb(repeat message bit)置位,即:rmb = 1。
cannm_repeatmessagerequest()接口不能在rms、pbm、bsm状态下主动调用,如下所示:
这意味着,节点被动唤醒的时候,网络状态由bsm进入rms,所以rmb = 0。
通过SerDes远端I²C接口访问16位I²C外设寄存器地址
VR科普“任意门”等你开启
苹果计划在美国建整车厂,新车最快2024年亮相
开箱评测 卓力增压熨烫机TS3000体验
智能照明在智能家居系统中是什么地位
ECU从休眠到网络唤醒时间怎么测?
华为已经为智能手机和电脑开发了自己的操作系统
用于基站应用中Xilinx Ultrascale+ ZU9EG FPGA内核电源轨的 30A PMBus参考设计
通用型运算放大器,通用型运算放大器是什么意思
无人驾驶卡车的真正技术障碍
警惕掉入消费主义陷阱—无线遥控器够用就好 智能家居看看就好
FPC与PCB的区别你了解多少?
杭叉智能针对汽车行业做出叉式AGV的技术创新及应用
不仅仅是“猎鹰9号”火箭复飞 中国民营企业也要帮外国发射火箭
巨头齐发新品 吸尘器市场热闹非凡
MacBee能否成为全国物联网主流的通信协议
行业专家齐聚宁波 助力智能照明技术升级
物联网技术将如何颠覆自动化系统规则?
X-RAY产品内部检测设备
【节能学院】浅谈智能照明控制系统在智慧建筑中的应用