Root/modules/tsop.fpd

Source at commit e3556cabf2bd9bc5d265be63c6458e37f5d6f324 created 11 years 9 months ago.
By Adam Wang, INFO: clean up by order
1/* MACHINE-GENERATED ! */
2
3frame pin {
4    __0: vec @(padw/2, C/2)
5    __1: vec @(-padw/2, -C/2)
6    pad "$n" . __0
7}
8
9frame pins_top {
10    set n = N-i
11
12    __0: vec @(x, 0mm)
13    frame pin .
14}
15
16frame pins_bottom {
17    set n = i+1
18
19    __0: vec @(x, 0mm)
20    frame pin .
21}
22
23frame pins {
24    set y = W/2
25
26    set x = (i-(N/2-1)/2)*e
27
28    loop i = 0, N/2-1
29
30    __0: vec @(0mm, y)
31    frame pins_top .
32    __1: vec @(0mm, -y)
33    frame pins_bottom .
34}
35
36frame marker {
37    set r = ((N/2-1)*e-x)/2-w
38
39    __0: vec @(-x/2-1.5*Z, -(y/2-C/4))
40    __1: vec .(-r/3, 0mm)
41    circ __0 . w
42}
43
44frame outline {
45    set w = 5mil
46
47    set x = E
48
49    set y = D1
50
51    __0: vec @(x/2, y/2-C/4)
52    __1: vec @(-x/2, -(y/2-C/4))
53    rect . __0 w
54    __2: vec @(-x/2, D1/2)
55    __3: vec @(-x/2, -D1/2)
56    frame marker @
57}
58
59package "$name-$N"
60unit mm
61
62table
63    { name, N, B, C, D, D1, E, e, padw, W, Z }
64    { "TSOP", 28, 11.25mm, 1.4mm, 13.425mm, 11.8mm, 8mm, 0.55mm, 0.2mm, 12.65mm, 0.25mm }
65    { "TSOP", 32, 18.1mm, 1.39mm, 20mm, 18.4mm, 8mm, 0.5mm, 0.27mm, 19.49mm, 0.25mm }
66    { "TSOP", 56, 18.1mm, 1.39mm, 20mm, 18.4mm, 14mm, 0.5mm, 0.27mm, 19.49mm, 0.25mm }
67
68frame outline @
69frame pins @
70measy pin.__1 -> pin.__0 1mm
71measy pin.__1 >> pin.__0 -E-3mm
72measy pin.__0 >> pin.__1 -E-1mm
73measx pin.__1 -> pin.__0 -e
74measx pins_top.__0 -> pins_top.__0 -2mm
75measy pins.__0 << pins_bottom.__0 -2.5mm
76measy outline.__0 >> outline.__1 -E-C
77measx outline.__1 >> outline.__0 8mm
78measx pins_bottom.__0 >> outline.__1 -2mm
79measy outline.__2 >> outline.__3 -3mm
80

Archive Download this file

Branches:
master



interactive