1
0
mirror of git://projects.qi-hardware.com/kicad-libs.git synced 2024-07-04 16:38:54 +03:00
kicad-libs/modules/dfn.fpd
Alvaro Gamez Machado 42abcc3857 modules/dfn.fpd: replace fixed '8' by 'pins' variable, so 6-pin versions of the footprints are numbered work too
Signed-off-by: Alvaro Gamez Machado <alvaro.gamez@hazent.com>
2017-02-06 11:33:26 -03:00

102 lines
1.9 KiB
Plaintext

/* MACHINE-GENERATED ! */
frame thermal {
table
{ ?features, dx, d }
{ "-TH", -0.4mm, 0.2mm }
{ "-TH", 0.4mm, 0.2mm }
__0: vec @(dx, 0mm)
__1: vec .(d/2, d/2)
__2: vec __0(-d/2, -d/2)
hole . __1
}
frame pad {
set n = pins+1
__0: vec @(cx/2, cy/2)
__1: vec @(-cx/2, -cy/2)
pad "$n" . __0
frame thermal @
}
frame pin {
__0: vec @(px/2, py/2)
__1: vec @(-px/2, -py/2)
pad "$n" . __0
}
frame pins {
set x = e*(i-(pins/2-1)/2)
set y = (iy+oy)/4*dy
set n = a+f*i
table
{ dy, f, a }
{ 1, -1, pins }
{ -1, 1, 1 }
loop i = 0, pins/2-1
__0: vec @(x, y)
frame pin .
}
frame outline {
set x = (X+gap)/2
set y = (Y+gap)/2
__0: vec @(X/2, Y/2)
__6: vec .(gap, gap)
__1: vec @(X/2, -Y/2)
__2: vec .(gap, -gap)
line __6 . w
__3: vec @(-X/2, Y/2)
__7: vec .(-gap, gap)
__8: vec @(-X/2, -Y/2)
__9: vec .(-gap, -gap)
line __7 . w
__4: vec .(-(w+r+0.1mm), r)
__5: vec .(0mm, r)
circ __4 . w
}
package "DFN-$pins$variant$features"
unit mm
allow holes
table
{ pins, variant, features, X, Y, e, iy, oy, px, cx, cy, gap_base }
{ 8, "", "", 2mm, 2mm, 0.5mm, 1.4mm, 2.4mm, 0.28mm, 1.3mm, 0.7mm, 0.2mm }
{ 8, "-0.4mm", "", 1.7mm, 1.35mm, 0.4mm, 0.8mm, 1.75mm, 0.2mm, 1mm, 0.4mm, 0.1mm }
{ 6, "-0.65mm", "", 2.2mm, 2.3mm, 0.65mm, 1.7mm, 2.9mm, 0.25mm, 1.2mm, 0.75mm, 0mm }
{ 6, "-0.65mm", "-TH", 2mm, 2.1mm, 0.65mm, 1.4mm, 2.8mm, 0.3mm, 1.6mm, 1mm, 0mm }
set py = (oy-iy)/2
set w = 5mil
set gap = gap_base+w/2
set r = 0.25mm
frame pins @
frame pad @
frame outline @
measy pin.__1 >> pin.__0 2mm
measy pin.__0 >> pin.__1 2mm
measy pad.__1 >> pad.__0 1.5mm
measx pin.__1 >> pin.__0 -1mm
measx pin.__1 -> pin.__0 -0.5mm
measy pin.__1 -> pin.__0 2mm-px
measx pins.__0 -> pins.__0 oy+0.5mm
measy outline.__1 >> outline.__0 -1mm
measx outline.__3 >> outline.__0 1.5mm
measx pad.__1 >> pad.__0 cy/2
measx thermal.__0 >> thermal.__0 -0.3mm
measx thermal.__2 -> thermal.__1 0.4mm