Root/modules/tsop.fpd

Source at commit dfcaa9dba51be5ed4007b7081440ad77f4243d23 created 9 years 7 months ago.
By Adam Wang, tsop.fpd: added new TSOP module
1/* MACHINE-GENERATED ! */
2
3frame pin {
4    __0: vec @(pad_w/2, C/2)
5    __1: vec @(-pad_w/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)*Pitch
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)*Pitch-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
62set Pitch = 0.5mm
63
64set pad_w = 0.27mm
65
66table
67    { name, N, A, B, C, D, D1, E, W, Z }
68    { "TSOP", 56, 6.8mm, 18.1mm, 1.39mm, 20mm, 18.4mm, 14mm, 19.49mm, 0.25mm }
69
70frame outline @
71frame pins @
72measy pin.__1 -> pin.__0 1mm
73measy pin.__1 >> pin.__0 -E-3mm
74measy pin.__0 >> pin.__1 -E-1mm
75measx pin.__1 -> pin.__0 -Pitch
76measx pins_top.__0 -> pins_top.__0 -2mm
77measy pins.__0 << pins_bottom.__0 -2.5mm
78measy outline.__0 >> outline.__1 -E-C
79measx outline.__1 >> outline.__0 8mm
80measx pins_bottom.__0 >> outline.__1 -2mm
81measy outline.__2 >> outline.__3 -3mm
82

Archive Download this file

Branches:
master



interactive