Root/modules/xtal-2.fpd

Source at commit d37268a6ba7dd08f54960a03ca755dc943e3636c created 7 years 3 months ago.
By Werner Almesberger, modules/: add PAD_S_120x120; correct classification of PAD_S_150x150
1/* MACHINE-GENERATED ! */
2
3frame pad {
4    __0: vec @(Px/2, Py/2)
5    __1: vec @(-Px/2, -Py/2)
6    pad "$pin" . __0
7}
8
9frame pads {
10    table
11        { pin, dx, dy }
12        { 1, -1, -1 }
13        { 2, 1, -1 }
14
15    __0: vec @(dx*Gx/2, 0mm)
16    frame pad .
17}
18
19frame outline {
20    table
21        { px, py, x, y }
22        { 0mm, Dy/2+w, Dx+2*w, 0mm }
23        { 0mm, -Dy/2-w, Dx+2*w, 0mm }
24        { -(Dx+2*w)/2, Dy/2+w-Py/2, 0mm, Py }
25        { -(Dx+2*w)/2, -(Dy/2+w-Py/2), 0mm, Py }
26        { (Dx+2*w)/2, Dy/2+w-Py/2, 0mm, Py }
27        { (Dx+2*w)/2, -(Dy/2+w-Py/2), 0mm, Py }
28
29    __0: vec @(px, py)
30    __1: vec .(x/2, y/2)
31    __2: vec __0(-x/2, -y/2)
32    line . __1 w
33}
34
35package "xtal2-${Dx}x${Dy}"
36unit mm
37
38table
39    { Dx, Dy, Gx, Ix, Px, Py }
40    { 11.5mm, 4.83mm, Px+Ix, 3mm, 5.5mm, 1.5mm }
41
42set w = 5mil
43
44frame pads @
45frame outline @
46measy pad.__1 -> pad.__0 1mm
47measx pad.__1 -> pad.__0 -1mm
48measy outline.__0 >> outline.__0 -(Gx/2+Px/2+1mm)
49measx pad.__0 >> pad.__1 1mm
50measx outline.__2 >> outline.__1 -1mm
51meas pads.__0 >> pads.__0 3mm
52

Archive Download this file

Branches:
master



interactive