ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

BUSMASTER 实战手册:手把手跑通 CAN 总线仿真与测试

BUSMASTER 实战手册:手把手跑通 CAN 总线仿真与测试 BUSMASTER 实战手册手把手跑通 CAN 总线仿真与测试【免费下载链接】busmasterBUSMASTER is an Open Source Software tool to simulate, analyze and test data bus systems such as CAN. BUSMASTER was conceptualized, designed and implemented by Robert Bosch Engineering and Business Solutions (RBEI). Presently it is a joint project of RBEI and ETAS GmbH.项目地址: https://gitcode.com/gh_mirrors/bu/busmaster调试 CAN 通信时手头没有接口卡又想先验证节点逻辑BUSMASTER 是博世 RBEI 与 ETAS 联合开源的 CAN 总线仿真、分析与测试工具用内置虚拟总线就能在 Windows 上跑起完整仿真。本文覆盖环境搭建、节点配置、脚本挂载、收发消息和日志回放一条主线读完即可自己搭一套最小仿真环境。 它到底能帮你做什么你可以用它来做三件事没有硬件时用 CAN_STUB 虚拟总线挂多个仿真 ECU 节点互相收发把总线上收到的帧录成 .log 日志文件之后按原始时间间隔回放复现问题以及用 C 语言写消息、定时器、按键处理器编译成 DLL 后挂到总线上实时响应报文。![BUSMASTER CAN 总线仿真架构截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/3 Design Document/images/design_overview.png?utm_sourcegitcode_repo_files)架构图里红色区域是主程序蓝色 DIL 模块负责对接各家硬件绿色是公共库——具体模块名不再展开记住主程序 DIL 硬件适配 公共库三层即可。知道边界后我们先把环境搭起来。️ 搭建 CAN 仿真环境从零到首次跑通克隆仓库git clone https://gitcode.com/gh_mirrors/bu/busmaster装好 Visual Studio 2013 Community 和 Multibyte MFC 库GCC 用 MinGW 提供Bison、Flex 已在仓库 Tools/ 目录不用再下。按依赖顺序构建解决方案Kernel\BusmasterKernel.sln → BUSMASTER\BUSMASTER.sln → Language Dlls → LDFEditor → LDFViewer → Format Converter图省事直接运行 Sources\build.bat。启动 BUSMASTER连接时选 CAN_STUB即可在无硬件的仿真模式下收发报文。![BUSMASTER 安装流程截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/1 Development Environment/images/installation.png?utm_sourcegitcode_repo_files)环境就绪后剩下的事就是一条流水线建节点、挂脚本、看消息、录日志。⚙️ 走通核心工作流从建节点到日志回放先打开 Configure Simulated Systems 窗口在 .sim 配置文件下添加节点——每个节点对应一个 C 源文件点 Build and Load 后节点就开始在虚拟总线上活动。![BUSMASTER CAN 节点仿真配置截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/2 Requirement Specification/images/screenshots/simulated_systems_config.png?utm_sourcegitcode_repo_files)节点跑起来后在函数编辑器里写响应逻辑。编辑器按 Include Headers、Message Handlers、Timer Handlers、Key Handlers 等分组生成模板你在 TODO 处填 C 代码保存后由 GCC 编译成 DLL 加载。![BUSMASTER CAN 函数编辑器截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/2 Requirement Specification/images/screenshots/function_editor.png?utm_sourcegitcode_repo_files)连接总线后消息窗口逐帧显示时间戳、Tx/Rx、ID、DLC 和数据字节若挂了数据库信号还会被解析成带单位的物理值不用自己按位拆字节。![BUSMASTER CAN 消息监控窗口截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/2 Requirement Specification/images/screenshots/message_window.png?utm_sourcegitcode_repo_files)最后接上记录与回放日志配置里指定 .log 路径、十六进制格式和触发条件回放时既可保留录制时的时间间隔也可以设成循环播放用来反复冲击你的测试节点。![BUSMASTER CAN 日志回放配置截图](https://raw.gitcode.com/gh_mirrors/bu/busmaster/raw/de29ec1514558b3b7e0504e07d38ce0d65616d0f/Documents/2 Requirement Specification/images/screenshots/replay_config.png?utm_sourcegitcode_repo_files)流水线跑通之后有几个新手几乎必踩的坑值得提前知道。 避开新手最常踩的三个坑现象直接打开 BUSMASTER.sln 编译报找不到依赖库。原因各解决方案之间有先后依赖Kernel 必须先编译。解法严格按 Kernel → BUSMASTER → 工具链的顺序构建或直接跑 Sources\build.bat。现象编译阶段报 MFC 相关错误。原因默认安装的 VS2013 不带 Multibyte MFC 库。解法单独安装 Multibyte MFC Library版本与 VS2013 匹配。现象没有 CAN 接口卡连接时找不到可用设备。原因各硬件 DIL 都要求实体设备在场。解法连接时选 CAN_STUB它走仿真引擎在内存里环回报文适合先跑通流程之后再切 PEAK USB、ETAS BOA 等真实硬件。 延伸资源一键构建脚本Sources/build.bat主程序源码Sources/BUSMASTER需求规格书含全部界面截图Documents/2 Requirement Specification下一步建议打开 Sources/BUSMASTER/CAN_STUB 看一遍虚拟总线实现然后照着 Configure Simulated Systems 建一个自己的单节点 .sim 配置从一条 8 字节报文开始。【免费下载链接】busmasterBUSMASTER is an Open Source Software tool to simulate, analyze and test data bus systems such as CAN. BUSMASTER was conceptualized, designed and implemented by Robert Bosch Engineering and Business Solutions (RBEI). Presently it is a joint project of RBEI and ETAS GmbH.项目地址: https://gitcode.com/gh_mirrors/bu/busmaster创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表