[utest][can] Add CAN send and receive tests - #11752
Conversation
|
👋 感谢您对 RT-Thread 的贡献!Thank you for your contribution to RT-Thread! 为确保代码符合 RT-Thread 的编码规范,请在你的仓库中执行以下步骤运行代码格式化工作流(如果格式化CI运行失败)。 🛠 操作步骤 | Steps
完成后,提交将自动更新至 如有问题欢迎联系我们,再次感谢您的贡献!💐 |
📌 Code Review Assignment🏷️ Tag: componentsReviewers: @Maihuanyi Changed Files (Click to expand)
🏷️ Tag: components_driver_canReviewers: @wdfk-prog Changed Files (Click to expand)
📊 Current Review Status (Last Updated: 2026-08-25 15:57 CST)
📝 Review Instructions
|
|
验证了两个can互相收发,以及外部can盒测试的情况,回环测试暂未验证 |
拉取/合并请求描述:(PR description)
[
为什么提交这份PR (why to submit this PR)
现有 CAN 驱动缺少统一的收发 utest,难以在不同板卡上复用测试流程,也无法系统覆盖回环、外部节点、双控制器、不同仲裁波特率以及 CAN FD/BRS 等场景。
你的解决方案是什么 (what is your solution)
新增可配置的 CAN 收发 utest,支持单控制器回环、外部 CAN 节点和双控制器三种拓扑,覆盖阻塞及非阻塞发送、多个仲裁波特率、Classic CAN、CAN FD 和 BRS 帧,并在失败时输出控制器状态。测试结束时恢复原配置后再关闭设备,Kconfig 启用测试时自动选择 CAN 框架,并将接收超时范围调整为 1 至 60 秒、默认 10 秒。已在 bsp/renesas/ra8p1-titan-board/m85 上完成 Classic CAN、CAN FD、BRS 及双路 CAN 实板验证,并通过 Keil 编译。
请提供验证的bsp和config (provide the config and bsp)
]
当前拉取/合并请求的状态 Intent for your PR
必须选择一项 Choose one (Mandatory):
代码质量 Code Quality:
我在这个拉取/合并请求中已经考虑了 As part of this pull request, I've considered the following:
#if 0代码,不包含已经被注释了的代码 All redundant code is removed and cleaned up