
拿一个很常见的场景开头项目里用到一颗新出的芯片供应商只给了数据手册Altium Designer自带的库翻遍了也没有对应器件。去网上搜要么找到的库引脚对不上要么画风粗糙放到原理图里怎么看怎么别扭。这时候就只能自己动手在原理图库里把器件建出来。这篇是AD学习之旅系列的第3篇专门聊 Altium Designer 20 里新建原理图库器件这件事从建库前怎么分析芯片资料到实际放置引脚、画符号、做多Part元件再到批量处理大管脚芯片、编译集成库把一套完整流程和踩坑点都过一遍。适合正在系统学AD、或者被“库不够用”折磨过的硬件工程师参考。很多人觉得建库是件苦差事其实它就是“把数据手册翻译成原理图符号”的过程逻辑搞清楚了剩下全是熟练工。我把自己的操作习惯和检查流程整理出来你按这个套路走至少能少走一半弯路。1. 建库前的准备想清楚比动手更重要1.1 原理图库器件的本质是符号不是封装先搞清楚一个概念原理图库器件Schematic Symbol和 PCB 封装Footprint是两套完全独立的东西。原理图库里你画的是逻辑符号只负责表达“这颗芯片有哪些引脚、每个引脚是什么功能”不负责表达“这颗芯片物理上长什么样、焊盘间距多少”。引脚编号是连接原理图和 PCB 的唯一桥梁你在原理图里放的符号引脚编号是 1那 PCB 封装上焊盘编号也必须是 1才能对应上。这一点初学的时候特别容易混。有朋友问我为什么把原理图库器件放进工程里转 PCB 时报错“找不到封装”——就是因为他只画了原理图符号根本没给器件分配 PCB 封装模型。原理图符号和 PCB 封装是两个抽屉必须通过模型关联把它们扣在一起后面我会专门讲这一步。理解了这点你再看原理图库里的引脚就有感觉了。引脚本质上是一个带电气属性的连接点它有编号Designator、名称Name、电气类型Electrical Type还有方向。AD 在原理图里做电气检查ERC时就是根据这些电气类型判断连线是否合理的比如输出引脚接输出引脚会报警、电源引脚接普通信号也有问题。所以建库时规范填电气类型不是形式主义是在给后续检查打基础。1.2 不是所有器件都要自己画但要掌握自己画的能力先泼盆冷水不要为了练手把常用器件全部自己画一遍那是纯浪费时间。AD 自带库、芯片厂商官方库、主流库平台如 Ultra Librarian、SnapEDA、SamacSys覆盖了绝大多数常用器件能用现成的就用现成的。但有三类情况你必须自己动手新发布的芯片第三方库还没跟上官网只给数据手册不给原理图符号。非标器件比如自制的接口电路、分立器件组合模块、定制变压器。从网上下载的库文件有质量问题引脚错位、命名不规范与其修补不如重建。我自己的习惯是谁用谁建用哪个工程建哪个工程。不要一次性屯几百个器件进库一方面建库本身有出错率另一方面没有实际项目压测过的库你根本不知道它有没有问题。等这个器件在项目里跑过一版、打样回来实测没问题这颗库才算“可信库”。1.3 从数据手册里提取建库素材拿到一颗新芯片先别急着开软件花10分钟把数据手册里这几样东西找齐引脚功能表Pin Function Table这是最核心的里面列出了每个引脚的编号、名称、功能描述。引脚定义图Pin Diagram通常是芯片顶视图标注了引脚位置。内部结构框图Block Diagram帮助你理解各引脚之间的关系画原理图符号时怎么分组心里有底。封装信息Package Information拿去做 PCB 封装用建原理图符号时可以暂时不管。举个例子我建了一颗 STM32F103C8T6打开数据手册翻到引脚功能表看到 LQFP48 封装共 48 个引脚其中 PB0 到 PB15、PA0 到 PA15、PC13 到 PC15、PD0 到 PD1 是 IO还有 VDD、VSS、VDDA、VSSA、VBAT 这些电源引脚以及 NRST、BOOT0、OSC_IN、OSC_OUT 这些功能引脚。把这些信息抄到一张表里建库的时候对着抄就行。这里有个容易漏的地方很多芯片有内部上下拉、模拟功能复用、耐压等级这些附加信息。原理图符号上不需要体现但你会需要在器件属性里备注清楚。我习惯在库元件的 Description 字段里写“MCU, 64KB Flash, 20KB RAM, LQFP48”方便后边检索这个稍后细说。2. 环境准备建一个干净可管理的库项目2.1 新建原理图库文件认识 SCH Library 面板AD20 里新建原理图库的路径是File → New → Library → Schematic Library。操作完会得到一个 .SchLib 文件里面默认带一个空的元件名字叫 Component_1。重点说一下右下角的 Panels 面板。在 AD20 里按右下角的 Panels勾选 SCH Library会弹出原理图库管理面板。这个面板左边是当前库里的所有元件列表右边是选中元件的引脚列表。建库过程中一半的操作都发生在这个面板里比如双击元件名改属性、双击引脚改参数、右键引脚排序。先把面板布局熟悉了后面操作会顺很多。新库文件记得马上保存并且按项目规范命名。我不建议用默认的 “SchematicLibrary1.SchLib” 这种名字时间长了根本不知道里面是啥。一般会按公司或团队规范比如“CompanyName_SchLib.SchLib”或者按器件类别拆成“MCU.SchLib”“Power.SchLib”“Connector.SchLib”。单个库文件不适合塞太多不同类别的器件否则编译和管理都很痛苦。2.2 单位、网格和原点决定绘图精度原理图库里的单位默认是 mil密尔1mil 0.0254mm。画原理图符号不涉及物理尺寸用 mil 完全够用不用特意切到 mm。关键是网格设置。AD 的默认 Snap Grid 是 10mil这个值我建议保留。原理图符号的引脚间距、符号框大小都按 10mil 的整数倍去画放到原理图里连线才会整齐。如果你把引脚放到网格之外放大看可能没事但连线的时候会发现导线很难准确吸附到引脚端点看着歪歪扭扭强迫症直接崩溃。怎么检查网格菜单 View → Grids → Set Global Snap Grid可以设置全局吸附网格。在原理图库编辑环境里建议打开网格显示View → Grids → Toggle Visible Grid。如果网格太密看不清可以用快捷键 G 快速切换网格大小这是画库时最高频的快捷键之一。原点设置也容易被忽略。原理图库元件有一个原点参考点放置到原理图时光标就抓在这个点上。我习惯把原点设在符号的中心或者左下角不同器件规则统一。实际操作中可以从菜单 Edit → Set Location → Origin然后点击一个网格点作为原点。如果原点位置不对后面在原理图里放置元件时会发现元件离光标很远拖起来很别扭。2.3 缓存与工程文件管理AD 用久了会有一个毛病原理图库明明改了编译后还是旧数据。这多半是缓存问题。AD20 会生成一堆临时文件和缓存目录偶尔抽风。遇到这种情况不用急着重装先试试菜单 DXP → Preferences → Data Management → Cache清理一下缓存或者干脆重启软件很多时候问题就没了。还有就是文件路径。库文件最好不要放在系统盘默认目录而是跟着工程走比如放在工程目录下的 Library 文件夹里。这样整包拷贝工程时不会丢文件团队成员协同也能直接访问同一个库。我曾经见过有人把库文件放在桌面清理桌面时顺手删了整个工程打不开——血的教训库文件要进版本管理至少要统一归档。3. 第一颗元件的完整建库实操3.1 画外形框位置与比例双击 SCH Library 面板里的 Component_1打开元件属性把 Designator 改成 U?这是位号前缀问号表示由系统在放置时自动编号Default Comment 改成具体型号比如 LM358。这里说的 Designator 是元件放置到原理图后自动生成的位号格式固定为“前缀数字”前缀表示元件类型U 代表芯片、R 代表电阻、C 代表电容跟引脚 Designator 是两码事别搞混。然后画外形框。用菜单 Place → Rectangle 放置一个矩形。想把引脚按逻辑分组摆放矩形就不能画成正方形要预估一下宽度和高度。比如四运放 LM358 是双运放每边放几个引脚大致排布一下。这里有个新手常犯的错把外形框画得刚刚好包裹引脚。实际上引脚本身长度为 100mil 到 300mil 不等如果你把矩形紧贴引脚起点引脚长度会从矩形边缘向外延伸看起来像“插在框上”这是正常的。符号框要画在引脚的内侧给引脚编号和名称留出显示空间。我自己画符号框的习惯是先用 Place → Line 画一个大概的矩形轮廓再拖动调整到合适的网格位置。画完右键属性里可以改 Border Width边框粗细和 Fill Color填充色。库里元件一般不用填色保持白色底就行一旦填色原理图阅读反而费劲。3.2 放置引脚属性与电气类型外形框画完放引脚。菜单 Place → Pin或者直接按快捷键 PP。进入放置状态后按 Tab 键会弹出引脚属性窗口这是建库过程中最重要的一个窗口。引脚属性里有几个关键的字段Designator引脚编号必须和 PCB 封装的焊盘编号一一对应比如芯片的 1 脚这里就填 1。Name引脚名称比如 VCC、GND、PA0。名称只是给人看的不参与电气连接匹配。Electrical Type电气类型下拉框里可选 Input、Output、Bidirectional、Power、Passive 等。这个决定 ERC 检查的行为。Hide是否隐藏引脚。电源和地引脚经常设置为隐藏稍后细说。Part Number所属的 Part 编号多Part元件时会用到单Part元件都填 1。Pin Length引脚长度默认 300mil可以改成 200mil 或 100mil。原理图符号里引脚长度影响观感一般统一的符号用 200mil 比较协调。放置引脚时要注意方向。鼠标放置引脚时会看到引脚一端是十字形状一端是带名字的小方块。十字端是电气连接点必须朝外即朝符号框外部带名字的一端朝里。放置时按空格键可以旋转方向按 X 或 Y 可以镜像翻转。如果你发现十字端朝里连到符号框里面去了按空格转 180 度调回来。放置一排引脚时有个高效操作放置第一个引脚时按 Tab 设置好 Designator 和 Name不要退出放置状态连续点击放置下一个位置AD 会自动递增引脚编号。这个自动递增的规则在 Preferences → Schematic → General → Auto-Increment During Placement 里设置默认每次加 1。这个功能建大芯片时能省大量时间。用生活化类比理解引脚电气类型Input 引脚像门铃按钮只接收外部信号进来Output 引脚像门铃喇叭只有它主动发声Bidirectional 引脚像对讲机既能说又能听Power 引脚像电源插座固定供能Passive 引脚像电缆接线柱不知道方向只负责连通。你按这个直觉去选绝大多数情况不会错。3.3 电源与地引脚显示还是隐藏电源和地引脚的处理是个经典选择题。比如数字芯片的 VCC 和 GND很多教科书式原理图喜欢隐藏只画一个电源网络标签。AD 里把引脚属性里的 Hide 勾上再在 Net Name 里填写网络名比如 VCC、GND这个引脚在原理图符号上就不可见但会全局连接到同名网络上。我的建议能显示就显示。隐藏引脚省了连线但阅读原理图的人看不到芯片供电情况调试时容易漏检查电源是否接对。尤其对于电源芯片、电平转换芯片这类供电引脚较多的器件隐藏引脚很容易让 PCB 布局的人漏接电源。如果一定要隐藏注意两点一是 Net Name 必须填写否则引脚悬空ERC 会报错“未连接引脚”二是隐藏引脚的电气类型必须设置正确电源引脚类型选 Power地引脚也选 PowerERC 才能正确识别这类网络。不过在实际工程里数字芯片的 VCC/GND 我一般还是会显示只是在原理图符号上把它们放在不易混淆的位置比如顶部和底部用网络标签连接。这是个人风格问题但强烈建议统一规则别这颗芯片隐藏、下颗芯片显示那才是真灾难。3.4 多Part元件一个符号拆成多个逻辑单元多Part元件这个词听起来高大上其实就是把一颗芯片拆成几个独立的功能符号。比如 74HC00 是四个与非门你当然可以把四个门挤在一个大方框里引脚排列密密麻麻但放到原理图里占地方阅读也不方便。更好的做法是建一个 4-Part 元件每个 Part 画一个独立的与非门符号四个 Part 共享同一个位号 U1但分别标为 U1A、U1B、U1C、U1D。具体操作在原理图库编辑界面菜单 Tools → New Part会自动创建 Part B、Part C、Part D。每个 Part 是独立的图形区域可以分别画符号、放引脚。注意每个 Part 之间共用一个元件名共享同一个位号和封装模型。这里有个关键点一个元件的所有 Part 的引脚数量加起来才是这颗芯片的实际引脚数。比如 74HC00 有 14 个引脚Part A 放 3 个引脚1A、1B、1YPart B 放 3 个引脚2A、2B、2YPart C 放 3 个引脚3A、3B、3YPart D 放 3 个引脚4A、4B、4Y电源和地放剩下的 2 个引脚通常放在 Part A 或单独一个 Part。放引脚时每个引脚的 Part Number 要对应它所属的 Part否则放到原理图里会跑到错误的符号上。多Part元件的一个坑不同 Part 的画布大小不一致。AD 里多个 Part 共享同一个网格范围但每个 Part 的图形独立。如果 Part A 画了一个大矩形Part B 只画了一个小矩形视觉上会不协调。建议同一个元件的所有 Part 采用相同的外形框尺寸至少在风格上保持一致比如门的符号都画成一样的宽度。3.5 为元件补充属性位号、型号与模型画完符号和引脚还剩最后一步给元件本体设置属性。在 SCH Library 面板双击元件名进入元件属性对话框。这里有几个字段必须填好Default Designator默认位号前缀。芯片填 U?电阻填 R?电容填 C?连接器填 J?。Default Comment默认注释显示型号。比如 STM32F103C8T6、LM358、74HC00。Description描述。填“12-Bit ADC, SPI Interface, SOIC-8”这类关键词方便后期搜索。Symbols这里关联各 Part 的符号。Models模型列表用来关联 PCB 封装和仿真模型。Description 字段强烈建议认真写。库里的元件动不动几百上千个哪天你忘了型号搜 Description 里的关键词比翻原理图方便得多。我见过一个团队所有元件 Description 不填选型时只能一个个双击打开看效率低到崩溃。4. 批量绘制100脚芯片的省力技巧4.1 用Excel整理引脚表画短引脚数的芯片比如 8 脚、16 脚手动放引脚问题不大。但当你遇到 LQFP64、LQFP100 这种几十上百脚的芯片一个一个手工放置引脚不仅慢而且容易错。我的方法是用 Excel 整理引脚表再用 AD 的 Smart Paste 功能批量生成引脚。在 Excel 里建一张表列包括引脚编号Designator、引脚名称Name、电气类型Electrical Type、所属 Part 编号。对着数据手册的引脚功能表抄就行。比如 STM32F103C8T6 的 LQFP48 封装新建一张表格逐行填DesignatorNameElectrical TypePart1VBATPower12PC13I/O13PC14I/O14PC15I/O15PD0I/O16PD1I/O1............电气类型字段建议直接填 AD 下拉框里的标准值Input、Output、Bidirectional、OpenCollector、Passive、Power、HiZ。AD 的 Smart Paste 能识别英文值中文填进去它不认识还要手动改。4.2 Smart Paste 批量放置引脚表格准备好之后全选 Excel 里的数据复制到剪贴板。回到 AD20 原理图库编辑界面按菜单 Edit → Smart Paste。这时候会弹出一个对话框。Smart Paste 的右侧有一些选项关键在于把粘贴内容识别为引脚Pins并把表格里的每一列映射到引脚属性。具体操作是在 Paste 预览区域里把数据列和引脚属性字段一一对应Designator 列对应 DesignatorName 列对应 NameElectrical Type 列对应 Electrical TypePart 列对应 Part Number。映射对了点击 PasteAD 就会自动生成一排引脚。这里有个重要的细节Smart Paste 生成的引脚是沿竖直方向排列的逐个往下放。你需要手动选中这些引脚然后在 SCH Library 面板或编辑区里拖动摆放把它们按逻辑分组拖到合适的位置。不要指望 Smart Paste 一步到位把版面给你排好它的价值是把“人工建 100 个引脚”的体力活压缩成“拖动整理”的排版活。另外一个省力技巧芯片引脚往往按功能分组比如电源引脚、调试引脚、通信接口引脚。Excel 里建表时就把同一组的引脚排在一起粘贴出来之后直接整体选中一组引脚拖动到符号框的某个区域再微调位置。这样排版效率比一个一个拖高太多。4.3 引脚分组与美化排版大芯片符号的排版质量直接影响原理图的阅读体验。我的排版原则很简单电源引脚放顶部或底部信号引脚按功能分两侧左进右出符合阅读习惯。AD20 支持在符号框里画分隔线和文字标注。用 Place → Line 在符号框内部画一条虚线把不同功能组的引脚隔开再用 Place → String 放文字标注比如 “Power”“UART”“SPI”“ADC”。这些标注不影响电气连接只起提示作用但原理图上工程师一眼就能看到功能区域调试查线省不少事。还有一个小技巧引脚名称和编号的显示方向可以调。选中引脚双击打开属性Font 设置里的颜色、大小、方向都能改。一般引脚名称放在引脚线上方编号放在下方这符合大多数硬件工程师的阅读习惯。AD 默认就是这种排布但有时候引脚空间太窄名称显示不开可以改成竖排或者缩小字号。4.4 对齐和间距检查画完所有引脚后用检查清单过一遍快捷键 VD 可以缩放视图拉远了缩小看整体检查引脚的分布是否均匀。选中一排引脚用 Edit → Align → Top Edges 等命令批量对齐。对齐是处理密脚芯片的救命功能手动一个个摆不仅费眼而且很难做到间距均匀。看引脚编号是否连续。用 SCH Library 面板的引脚列表按 Designator 排序检查有没有缺号或重复。芯片引脚断了编号到 PCB 阶段焊盘对不上会出大事故。实际画 STM32F103C8T6 这类 LQFP48 芯片时我通常花 20 分钟抄表10 分钟 Smart Paste20 分钟排版对齐总共一小时搞定一颗。比手工摆引脚快了一个数量级而且不容易漏引脚。5. 规则检查与常见问题排查5.1 Component Rule Check 怎么用建好的元件不要急着用先跑一遍规则检查。在原理图库编辑界面菜单 Reports → Component Rule Check。弹出的对话框里有几个选项我基本全勾Duplicate pins检查引脚编号重复。Missing pins检查引脚缺失。Missing pin name检查引脚没有名称。Missing footprint in model检查是否缺少封装模型。Check for missing component description检查元件描述是否缺失。点击 OKAD 会在输出窗口列出所有问题。看到问题不要慌逐条双击可以定位到对应引脚或元件修改后再跑一遍直到没有报错。5.2 常见报错与修法用表格列几个我实际遇到最多的问题报错提示原因解决方式Duplicate Pin Designators两个引脚编号重复比如有两个 1 脚在 SCH Library 引脚列表里按 Designator 排序找出重复项改掉Missing Pin Designator某个引脚没有编号双击引脚把 Designator 填上Component has no PCB Model元件没有关联任何 PCB 封装在元件属性的 Models 里添加对应的封装模型Pin not connected in schematic原理图里放置元件后某引脚悬空确认引脚电气类型是否正确悬空引脚应在规则检查中忽略或接上网络Off-grid Pin引脚没有落在网格上开启网格吸附把引脚重新吸附到网格点还有一类很诡异的问题明明库里的引脚有名称放到原理图上却显示不出来。这种多半是引脚名称的字号太大或者引脚长度太短导致名称被截断。把引脚长度调到 200mil 以上或者把名称字号调小一档问题就解决了。5.3 从库更新到原理图为什么改了没反应建完的库元件加到原理图里之后如果你回去改了库文件原理图里不会自动更新。需要手动更新在原理图编辑界面菜单 Tools → Update From Libraries选择对应的库元件AD 会提示有哪些属性或引脚差异确认后批量更新。这里有一个高频坑你改了库元件的引脚排列但原理图里的器件相关的连线还可能保留在旧位置上更新后连线会乱。所以规范做法是如果只是改属性字段可以放心更新如果改了引脚编号或引脚电气类型最好检查一下原理图里该器件的相关连线确认没有断线或误连。还有一个“改了没反应”的经典原因原理图库文件没保存。AD 有时会把库文件放在后台缓存里你以为改了实际上文件没落盘。所以养成 CtrlS 的习惯改完库先保存再去执行 Update From Libraries。6. 进阶把原理图库和封装库关联成集成库6.1 为什么推荐用集成库原理图库建好PCB 封装也画好之后用集成库.IntLib把两者打包在一起是最省心的管理方式。你可以用两种方式管理库文件一种是散装的原理图库和 PCB 库在工程里分别加载另一种是把它们编译成集成库一个文件里同时包含原理图符号和 PCB 封装在 AD 的库面板里能直接搜索、放置。集成库的好处拷贝方便一个文件全带走版本管理清晰不会出现原理图库更新了、封装库没更新的错位放置元件时自动带出封装不需要手动给每个器件配封装。缺点是编译时如果引脚编号和封装焊盘编号对不上放置时没问题但转 PCB 会各种报错。6.2 添加封装模型与引脚映射在库元件属性对话框底部的 Models 区域点击 Add → Footprint选择对应的 PCB 封装文件。关键是建立“引脚映射”——原理图符号里的引脚编号必须和 PCB 封装里的焊盘编号一一对应。大多数情况下编号直接相等比如原理图符号的 1 脚对应封装焊盘 1。AD 会自动按编号匹配不需要手工设置。但如果碰到特殊封装比如 BGA 封装位号是 A1、B1、C1而原理图符号引脚编号也是 A1、B1、C1对应关系依然成立。真正的问题是有些国产器件数据手册的引脚编号不规范比如数控电位器引脚标 1、2、3和封装焊盘号对不上这时就要手工在 Footprint Model 对话框里调映射关系。我踩过最大的坑就是符号引脚编号和封装焊盘编号不一致导致 PCB 上器件引脚连错打样回来才发现。后来学乖了每次编完集成库都随机抽查几个引脚用 SCH Library 面板和 PCB Library 面板对照着看麻烦是麻烦但值得。编译集成库的步骤很简单File → New → Project → Integrated Library把原理图库和 PCB 库文件拖进这个工程保存后右键工程名Compile Integrated LibraryAD 会生成一个 .IntLib 文件安装到库列表里就能用了。编译时如果报错多半是引脚映射问题或缺少模型回到 5.2 节的方法排查。编译成功后在 AD 右下角 Libraries 面板里搜索器件的型号就能看到并直接拖放。7. 建库心得与后续扩展说几个长期建库积累的个人体会。建库这件事最大的风险不是画得慢而是画错了自己不知道。画错引脚编号放到原理图里很难发现最终在 PCB 阶段爆炸。所以我在建库时会做“盲测”把建好的符号放到原理图里直接打开元件的引脚表不看符号图形只看数字列表和数据手册对照一遍。这个动作特别快但能过滤掉九成以上的低级错误。第二个体会是养成“一次画对”的习惯比“快速画完”更重要。建库时多花十分钟把引脚电气类型选对、把 Description 写清爽后面十年用这个库都会很舒服。反过来偷懒五分钟挖的坑调试的时候填回来可能要一整天。第三个建议是把常用的规则固化成模板。比如符号框统一用 200mil 引脚长度、电源引脚放顶部、信号引脚左入右出、Description 格式统一是“类型-规格-封装”。这些都只是习惯问题但团队协作时统一风格能极大降低沟通成本。如果用的是 AD 的厂房环境还可以设置库文件的检查规则让每个人提交的库都自动过规则检查。后续扩展方面现在有些工具支持从数据手册半自动提取引脚信息生成库文件也有通过 AI 辅助生成原理图和 PCB 的探索。我的看法是工具可以提效但建库的基础逻辑——理解引脚、电气类型、模型映射——永远是核心。就像用计算器之前你得先会四则运算用 AI 建库之前你得先能手拆一颗芯片。把这篇流程跑几遍你对 AD 的库体系就有完整认知了以后再遇到任何“库不够用”的场面心里都有底气。最后再分享一个小技巧AD 的 SCH Library 面板右下角有一个“编辑元件的所有Part引脚”的入口画完多Part元件后在那里可以一次性看到所有 Part 的引脚全貌。每次画完多Part元件我都会瞄一眼这个表格确认没有哪个 Part 的引脚数量和型号不符。这个方法救了我好几次推荐试试。