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实现。这里对格式没有进一步解析。
有必要,欢迎大家交流。