Root/modules/qfp.fpd

Source at commit 86ea428afcef59fd87407fe10ccd84c7294873a5 created 8 years 6 months ago.
By Werner Almesberger, prod/doc/analysis.html: emphasize that 1 MHz clock is normal without firmware
1/* MACHINE-GENERATED ! */
2
3frame pad {
4    set px = (dx*X1+dy*Y1)/2
5
6    set py = (dy*X1+dx*Y1)/2
7
8    set pin = side*pins/4+i+1
9
10    __0: vec @(px, py)
11    __1: vec @(-px, -py)
12    pad "$pin" __0 .
13}
14
15frame side {
16    set pos = i-(pins/4-1)/2
17
18    loop i = 0, pins/4-1
19
20    __0: vec @(e*pos*dx, e*pos*dy)
21    frame pad .
22}
23
24frame pads {
25    table
26        { side, dx, dy }
27        { 0, 0, -1 }
28        { 1, 1, 0 }
29        { 2, 0, 1 }
30        { 3, -1, 0 }
31
32    __0: vec @(dy*C1/2, -dx*C2/2)
33    frame side .
34}
35
36frame index {
37}
38
39frame outline {
40    set mx = D1/2
41
42    set my = E1/2
43
44    set cf = 0.8
45
46    set rf = (1-cf)/2
47
48    set r = mx*rf
49
50    __0: vec @(mx, my)
51    __1: vec @(-mx, -my)
52    rect . __0 w
53    __2: vec @(-mx*cf, my*cf)
54    __3: vec .(0mm, r)
55    circ __2 . w
56}
57
58package "$name"
59unit mm
60
61table
62    { name, pins, X1, Y1, e, C1, C2, D1, E1 }
63    { "LQFP32", 32, 0.55mm, 1.3mm, 0.8mm, 8.45mm, 8.45mm, 7mm, 7mm }
64
65set X2 = X1+(pins/4-1)*E
66
67set Y2 = X2
68
69set w = 5mil
70
71frame pads @
72frame outline @
73measy pad.__1 -> pad.__0 1mm
74

Archive Download this file



interactive