方才和软件工程师议论Matlab/Simulink下CAN信号打包解包的事变,正巧碰到J1939的坑。晚上花了不少时刻和宋先生沟通,也算有些收成,谢谢宋先生的协助~
一般的CAN解包/打包体式格局相对简朴,Simulink下主要有2种思绪:
1.CAN pack dbc完成打包
用Simulink自带的CAN pack/CAN unpack加dbc,然后生成代码,省去了许多移位运算的贫苦。
2.本身搭建CAN剖析模板(Msg->signal, Signal->Msg)
然则Simulink自带的CAN Pack和CAN Unpack在生成代码的时刻会发生许多冗余代码,手动挑选的时刻比较费力。也能够本身搭建移位运算的library只须要根据dbc协定转变接口即可,以下图所示。
Matlab/Simulink下完成J1939的解包打包相