Root/modules/sot.fpd

Source at commit 7f3f9267cb007e13eca0af273f9eedad0c6c5659 created 1 year 6 months ago.
By Werner Almesberger, components/stm32.lib: add STM32L052x6/8 in QFN32 (KxU) package
1/* MACHINE-GENERATED ! */
2
3frame pad {
4    set x = dx*e
5
6    set y = dy*cy/2
7
8    __2: vec @(x, y)
9    __0: vec .(px/2, py/2)
10    __1: vec __2(-px/2, -py/2)
11    pad "$n" . __0
12}
13
14frame marker {
15    set x = D/2+r+w+clear
16
17    set r = (px-w)/2
18
19    set clear = 0.15mm
20
21    set y = cy/2
22
23    __0: vec @(-x, -y)
24    __1: vec .(r, 0mm)
25    circ __0 . w
26}
27
28frame outline {
29    __0: vec @(D/2, E/2)
30    __1: vec @(D/2, -E/2)
31    line __0 . w
32    __2: vec @(-D/2, E/2)
33    __3: vec @(-D/2, -E/2)
34    line . __2 w
35}
36
37frame pads6 {
38    table
39        { n, dx, dy }
40        { 1, -1, -1 }
41        { 2, 0, -1 }
42        { 3, 1, -1 }
43        { 4, 1, 1 }
44        { 5, 0, 1 }
45        { 6, -1, 1 }
46
47    loop if = sqrt((N-6)*(N-6)), 0
48
49    frame marker @
50    frame outline @
51    frame pad @
52}
53
54frame pads3 {
55    table
56        { n, dx, dy }
57        { 1, -1, -1 }
58        { 2, 1, -1 }
59        { 3, 0, 1 }
60
61    loop if = sqrt((N-3)*(N-3)), 0
62
63    frame outline @
64    frame pad @
65}
66
67frame pads5 {
68    table
69        { n, dx, dy }
70        { 1, -1, -1 }
71        { 2, 0, -1 }
72        { 3, 1, -1 }
73        { 4, 1, 1 }
74        { 5, -1, 1 }
75
76    loop if = sqrt((N-5)*(N-5)), 0
77
78    frame marker @
79    frame outline @
80    frame pad @
81}
82
83package "SOT-$Name"
84unit mm
85
86table
87    { Name, N, D, E, e, cy, px, py }
88    { "235", 5, 3.05mm, 1.65mm, 0.95mm, 2.7mm, 0.6mm, 1.05mm }
89    { "236", 6, 3.05mm, 1.65mm, 0.95mm, 2.7mm, 0.6mm, 1.05mm }
90    { "323", 3, 2mm, 1.25mm, 0.65mm, 1.9mm, 0.7mm, 0.9mm }
91    { "363", 6, 2mm, 1.25mm, 0.65mm, 1.9mm, 0.4mm, 0.5mm }
92    { "523", 3, 1.6mm, 0.8mm, 0.5mm, 1.3mm, 0.4mm, 0.51mm }
93    { "563", 6, 1.6mm, 1.2mm, 0.5mm, 1.35mm, 0.3mm, 0.45mm }
94
95set w = 5mil
96
97frame pads6 @
98frame pads3 @
99frame pads5 @
100measx outline.__2 >> outline.__0 (cy-E+py)/2+0.5mm
101measy outline.__3 >> outline.__2 0.5mm
102measx pad.__1 -> pad.__0 -0.5mm
103measy pad.__1 -> pad.__0 0.2mm
104measx pad.__2 -> pad.__2 0.5mm
105measy pad.__2 >> pad.__2 -D
106

Archive Download this file

Branches:
master



interactive