kicad 元件描述文件说明

lib 文件

lib 文件封装了一个元件库,该元件库以 DEF 为开始,以 ENDDEF 结束,用以定义原件的名字和一些参数。 在这之间作辅助图形和指定元件引脚定义。


DEF name ref 0 offs Y Y 1 F N

字段 描述 备注
name 元件名, 如果以 ~ 开始,那就隐藏元件名,不做显示
ref 符号前缀,一般遵循 集成电路用 U 开头, 电阻器用 R 开头等,如果不设置,可以用 ~ 符号表示,不做指定
0 始终为0
offs 引脚名称偏移量,以 mil 为单位,设置为0 时, 引脚名称设置在画图外部
Y Y/N 是否显示引脚号
Y Y/N 是否显示引脚名称
1 给出元件原理图有几部分组成
F L/F 可选
N 功率表示, P/N 可选

F0 “ref” X Y Size H V C CNN
符号前缀文本,必填字段。

字段 描述 备注
ref ref 必须和 DEF 中的 ref 字段 相同。可以在名称前加 # 来表示是一个如电源这样的虚拟组件
X x坐标
Y y坐标
Size 大小
H H/V 水平或者垂直
I I/V 可见或者不可见
C C/L/R/T/B 居中,靠左,靠右, 靠上,靠下
C C/L/R/T/B 居中,靠左,靠右, 靠上,靠下 该参数和下面参数之间没有空格
I I/N 是否斜体
B B/N是否粗体

F1 “name” X Y Size H V C CNN

字段 描述 备注
name 该字段和 DEF 中的 name 字段相同, 参考 FO

F2
管脚名称


F3
数据文档的位置


Fn “text” X Y Size H V C CNN
用户自定义参数,n从4开始,参数意义参考 F0.


ALIAS

元件的一些别名,用空格隔开, 可能方便搜索


$FPLIST … $ENDFPLIST

管脚过滤器, CvPcb 可以只显示过滤后的部分管脚。

字段 描述 备注
$FPLIST 描述开始标识
pattern 匹配方式,表示带通配符的普通文本。 一个 ”?” 匹配任何单个字符,“ *”匹配零个或多个字符。 前导空格必须从模式中剪裁掉,模式通常以单个空格字符缩进
$ENDFPLIST 结束标识

DRAW … ENDDRAW

带有图形和符号的引脚定义的部分。

  • 圆弧, 以 radius为半径, (Xstart, Ystart)为起点,(Xend, Yend)为终点的圆弧 顺时针的圆弧。 起点和终点可以通过 半径 X Y 和 start end 来计算。

    A X Y radius start end part dmg pen fill Xstart Ystart Xend Yend
    
  • C X Y radius part dmg pen fill
    
  • 多边形

    P count part dmg pen X Y ... fill
    
  • 矩形

    S X1 Y1 X2 Y2 part dmg pen fill
    
  • 文本

    T angle X Y size hidden part dmg text italic bold Halign Valign
    
  • 贝塞尔曲线

    B count part dmg pen X Y ... fill
    
  • 引脚描述

    X name pin X Y length orientation sizenum sizename part dmg type shape
    

dcm 文件

描述原理图中的元件的文件在一个单独的文件中,和 lib 的文件名相同,后缀名为 dcm。如果一个元件缺少描述,关键字列表或者这个描述文档,那这个文档中就没有器件描述数据。

字段 描述 备注
$CMP name 开始标识
D description 通用描述
K keywords 关键字列表,空格隔开
F filename 一个关于数据手册的相对位置
$ENDCMP 结束标识

元件管脚表述库

这个是 .pretty 结尾的文件夹下的 kicad_mod 后缀的文件的 s-expression 语法的描述。

旧版本中并不是用 s-expression 描述,而是在一个 .mod 文件,用一个描述头开始,然后是一系列的模块描述。

最新版本甚至以纳米为单位,但如果英式单位的话,最小只能是 1/10 mil。 以 1/10 度为角度最小刻度,900 就表示 90 度

这个语法使用的是 毫米和度。

这部分在 kicad-footprint-generator 项目中python实现。这里对格式没有进一步解析。

有必要,欢迎大家交流。


参考

  • LibraryFileFormats.pdf

你可能感兴趣的:(kicad)