Root/modules/usb_a_rcpt_mid.fpd

Source at commit 7f3f9267cb007e13eca0af273f9eedad0c6c5659 created 5 years 11 months ago.
By Werner Almesberger, components/stm32.lib: add STM32L052x6/8 in QFN32 (KxU) package
1/* MACHINE-GENERATED ! */
2
3frame lateral {
4    table
5        { dx, pin }
6        { -1, 7 }
7        { 1, 8 }
8
9    __0: vec @(dx*Bx/2, Ly/2)
10    __1: vec @(dx*Lxo/2, -Ly/2)
11    pad "$pin" . __0
12}
13
14frame rear {
15    table
16        { dx, pin }
17        { -1, 5 }
18        { 1, 6 }
19
20    __0: vec @(dx*Rx/2, Ry)
21    __1: vec .(Rw/2, Rh/2)
22    __2: vec __0(-Rw/2, -Rh/2)
23    hole __1 .
24    __3: vec __0(aspect*Rw/2, aspect*Rh/2)
25    __4: vec __0(-aspect*Rw/2, -aspect*Rh/2)
26    rpad "$pin" . __3 bare
27}
28
29frame pins {
30    table
31        { ?ascend, pin }
32        { 0, p }
33        { 1, 5-p }
34
35    table
36        { ?p, px }
37        { 1, -3.5mm }
38        { 2, -1mm }
39        { 3, 1mm }
40        { 4, 3.5mm }
41
42    set aspectx = 1.85
43
44    set aspecty = 2
45
46    loop p = 1, 4
47
48    __0: vec @(px, Py)
49    __1: vec .(Pd/2, Pd/2)
50    __2: vec __0(-Pd/2, -Pd/2)
51    hole . __1
52    __3: vec __0(-Pd/2*aspectx, Pd/2*aspecty)
53    __4: vec __0(Pd/2*aspectx, -Pd/2*aspecty)
54    rpad "$pin" __3 . bare
55}
56
57frame front {
58    set width = 10mm
59
60    __0: vec @(0mm, -Fy)
61    __1: vec .(-width/2, 0mm)
62    __2: vec __0(width/2, 0mm)
63    line __1 . w
64}
65
66frame board {
67    set wing = 1mm
68
69    __0: vec @(0mm, -Cy)
70    __1: vec @(0mm, By)
71    __2: vec __0(Bx/2, 0mm)
72    __3: vec .(wing, 0mm)
73    line . __2 w
74    __4: vec __0(-Bx/2, 0mm)
75    __5: vec .(-wing, 0mm)
76    line . __4 w
77    __6: vec __1(Bx/2, 0mm)
78    line . __2 w
79    __7: vec __1(-Bx/2, 0mm)
80    line __4 . w
81    line . __6 w
82}
83
84package "USB-A-MID-$name"
85unit mm
86
87table
88    { name, Cy, Bx, By, Fy, Py, Pd, ascend, Rx, Ry, Rw, Rh, Lxo, Ly }
89    { "48258", 2mm, 13.6mm, 7.5mm, 9.9mm-6.85mm, 9.95mm, 0.92mm, 1, 15.7mm, 9.1mm, 0.9mm, 2.3mm, 18.3mm, 2.6mm }
90    { "1746311", 4mm, 14.2mm, 5.55mm, 14.55mm-9.05mm, 10.25mm, 0.92mm, 0, 12.8mm, 9.05mm, 0.9mm, 2mm, 18mm, 2.5mm }
91
92set aspect = 2
93
94set w = 5mil
95
96__0: vec @(Lxo/2, 0mm)
97frame board @
98frame lateral @
99frame rear @
100frame pins @
101frame front @
102measx board.__4 >> board.__2 Cy-Fy-1mm
103measx lateral.__1 >> lateral.__1 -Fy+Ly/2-1.5mm
104measy lateral.__1 -> lateral.__0 1mm
105measy rear.__4 -> rear.__3 1.5mm
106measy board.__4 >> board.__7 (Lxo-Bx)/2+1.5mm
107measy __0 >> board.__6 -1mm
108measy __0 >> rear.__0 -1.5mm
109measy __0 >> pins.__0 -2mm
110measx pins.__0 -> pins.__0 2mm
111measx pins.__0 >> pins.__0 2.5mm
112measx rear.__4 -> rear.__3 -1.5mm
113measx pins.__3 -> pins.__4 -3mm
114measy rear.__2 -> rear.__1 1mm
115measx rear.__2 -> rear.__1 -2mm
116measx pins.__2 -> pins.__1 -1mm
117measx rear.__0 >> rear.__0 4.5mm
118measy front.__2 >> board.__2
119

Archive Download this file

Branches:
master



interactive