不装商业EDA软件,打开 .brd 文件看懂电路板:开源工具 OpenBoardView 快速上手指南
【免费下载链接】OpenBoardViewView .brd files项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView
你手里拿到一份笔记本主板的.brd文件,想看看板子长什么样、某个芯片在哪个位置、某条电源走了哪些引脚,但商业 EDA 软件授权费动辄数万元,安装也繁琐。开源项目 OpenBoardView 就是干这个的:一个免费、跨平台的.brd文件查看器,把电路板文件读进内存,还原出元件布局和网络连接。读完这篇文章,你能独立完成"打开板子、锁定元件、追踪网络、记录标注"四件事。
一分钟认识 OpenBoardView
先划清边界:OpenBoardView 是查看和分析工具,不是画板工具。它不让你修改设计,只做三件正事——渲染板子、帮你找到东西、把找到的东西讲清楚。
它基于 SDL 和 ImGui 开发,用 C++ 编写,支持 Linux、Windows 和 macOS 三个平台。对用户最有价值的核心能力有四个:
- 多格式解析:不同 EDA 软件导出的板子文件大多能识别,核心解析器集中在 src/openboardview/FileFormats/ 目录,BRD、BVR、GenCAD、CAD 等每种格式一个模块
- 元件与网络搜索:支持一次输入多个编号,带拼写纠错
- 网络高亮:选中一个网络,属于它的所有引脚会被连成一片"光环"
- 标注数据库:按板子文件单独存笔记,存在本地 SQLite 数据库里,与
.brd文件本身分离
源码结构也很清爽,都在 src/openboardview/ 下,按 FileFormats、GUI、Renderers、UI 等目录划分,看一个功能就能找到对应模块。
环境准备:三条命令跑起来
主推 Linux(Ubuntu)平台的完整步骤,装好依赖、克隆仓库、编译,三步:
sudo apt-get install git build-essential cmake libsdl2-dev libgtk-3-devgit clone --recursive 'https://gitcode.com/gh_mirrors/op/OpenBoardView' cd OpenBoardView./build.sh构建完成后直接运行:
./bin/openboardviewmacOS 用户先执行brew install cmake sdl2,再走同样的克隆和./build.sh流程;Windows 可用仓库里的 Toolchain-mingw64.cmake 交叉编译。
从文件到画面:打开你的第一块板子
拿到文件后第一件事当然是看它。启动程序,按Ctrl+O调出文件选择对话框(也可从 File 菜单进),选中.brd文件,板子立即渲染出来。
打开后最常用的操作,建议记住这几个:
w / a / s / d或按住鼠标左键拖拽:平移视图- 鼠标滚轮、
-/=:缩放 x:重置缩放并居中- 空格键或鼠标中键:翻转板子,看背面
R:顺时针旋转,,:逆时针旋转
高分屏(2K/4K)上如果界面偏小,可以在设置里调整 DPI 缩放。程序支持多个实例同时运行,两块板子并排对比时很好用。
文件解析的入口在 src/openboardview/FileFormats/BRDFile.cpp,Allegro 的 BRD 格式就在这里被逐段读成内存里的元件和引脚。
在一千个元件里锁定目标
一块主板上动辄上千个元件,肉眼找编号U5340的芯片基本不可能。按/或Ctrl+F打开搜索对话框,这是全文最好用的功能。
操作路径很短:
- 对话框里有三个并排的输入框,可以分别填入不同编号,一次搜索全部定位
- 勾选Components按元件名搜,勾选Nets按网络名搜,两者可同时生效
- 匹配模式可选 Substring(子串)、Prefix(前缀)、Whole(整词),默认子串最宽松
- 回车搜索,结果列在输入框下方,点击任意一项即跳转并高亮
- 按
ESC清空结果和选中状态
找"某几个元件是否彼此靠近"这类问题时,三个输入框一次填完最省事。更贴心的是,编号打错也能救:把U5340打成U5340L,下方会给出相近候选项,而不是直接判"找不到"。
搜索逻辑在 src/openboardview/Searcher.cpp,拼写纠错建议由 src/openboardview/SpellCorrector.cpp 提供。
顺着一条网络走到所有引脚
找到元件只是开始,维修时更常见的问题是:这条信号从哪个引脚出发,连到了哪些器件?比如主板上常见的电源网络PPBUS_G3H,需要知道它经过哪些电阻电容。
做法和搜索元件几乎一样:
- 在搜索对话框勾选Nets,输入网络名,回车
- 板面上属于该网络的所有引脚同时亮起光环,一条网络的所有落点一目了然
- 把鼠标悬停到任意引脚上,弹出提示框,显示引脚编号、所属网络和元件名称
- 状态栏底部同步显示当前悬停位置的 Part、Pin、Net 和 Probe(测试点)信息
按p可以切换引脚显示,L打开网络列表,K打开元件列表,配合搜索结果核对很方便。
网络数据的组织在 src/openboardview/NetList.cpp,高亮渲染在 src/openboardview/BoardView.cpp 里完成。
把排查结论直接写在板子上
维修中查出的问题——"这个电容旁边有腐蚀""这条网络没电压"——只记在脑子里下次就忘了。OpenBoardView 的标注功能就是为沉淀这些信息准备的。
流程四步:
- 搜索并选中目标元件或引脚
- 在弹出输入框里写下备注文字
- 回车确认,标注出现在板面上
- 下次打开同一块板子,备注还在
标注数据存在按板子文件单独管理的本地数据库里,和.brd文件本身分离,同一个目录下多块板子各自维护各自的笔记。长期接触故障板子的人,可以把同类故障的检查结论逐条沉淀进去,几个月后就是一份自己的经验库。
实现上,标注读写封装在 src/openboardview/Annotations.cpp,底层是项目自带的 src/sqlite3/ 模块。
回到最开始那个问题
回到开头的场景:一份.brd文件,没有商业软件,怎么办。现在答案明确了——OpenBoardView 免费、跨平台,打开文件后给你元件搜索、网络高亮、本地标注这三样东西,恰好覆盖"看到、找到、记住"的完整排查路径。整个构建过程不超过十分钟,四个功能各试一遍不到半小时。如果你正好需要查看.brd文件,现在就可以按上面的三条命令克隆仓库,把板子打开跑一遍。
【免费下载链接】OpenBoardViewView .brd files项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考