返回博客

SOME/IP 从 Excel 到车载代码:全链路 AI 提效实录

起因

车载 SOME/IP 服务设计到落地,传统流程要跨 Excel、FIDL/FDEPL、代码生成、手写 Stub/Client 多个环节,链路长、易错、难复用。目标是把它变成一条可重复的流水线。

全链路流水线

  1. 服务矩阵 JSON:所有服务的接口定义收敛成一份结构化数据,改一处全链路同步。
  2. FIDL/FDEPL 生成:从矩阵自动导出接口定义文件,统一枚举宽度(SomeIpEnumBitWidth=8)等规范。
  3. CommonAPI codegen:自动生成 Stub/Client 骨架。
  4. 7 服务 83 接口落地:48 R&R + 32 Getter SUCCESS + 140 条事件,全部编译运行通过。
  5. C API 封装:服务端回调注册 / 客户端调用订阅,纯 C 程序验证通过,方便非 C++ 环境集成。
  6. 多平台 CMake:local / 5522 / 7720 三套工具链,一次设计多处编译。

关键坑

  • Stub initStubAdapter 必须存 stubAdapter_,否则 fire 事件静默失效(官方 demo 也有此 bug)。
  • CommonAPI sendEvent 强制可靠通道 → 需配 reliable 端口。
  • buildProxy 返回 nullptr = 缺 gen 代码链接(proxy 工厂静态注册在 gen .cpp 的 INITIALIZER 宏里,独立 C 程序必须链 GEN_SOURCES)。

沉淀

整套流程固化为可复用 SOP 技能(someip-full-chain),新项目直接照流程走。

阅读原文(公众号完整图文版) ↗

📍 定位中…
--° --
体感 --°💧 --%💨 --
加载中…
🔊