KiCad Libraries
Sign in or create your account | Project List | Help
KiCad Libraries Git Source Tree
Root/
| 1 | /* MACHINE-GENERATED ! */ |
| 2 | |
| 3 | frame pad { |
| 4 | set px = X/2 |
| 5 | |
| 6 | set py = Y/2 |
| 7 | |
| 8 | __0: vec @(px, py) |
| 9 | __1: vec @(-px, -py) |
| 10 | pad "$n" . __0 |
| 11 | } |
| 12 | |
| 13 | frame pads { |
| 14 | set x = e*(xi-pins/4+0.5) |
| 15 | |
| 16 | set y = (Yi+Yo)/2*(yi-0.5) |
| 17 | |
| 18 | set n = 2*xi+yi+1 |
| 19 | |
| 20 | loop xi = 0, pins/2-1 |
| 21 | |
| 22 | loop yi = 0, 1 |
| 23 | |
| 24 | __0: vec @(x, y) |
| 25 | frame pad . |
| 26 | } |
| 27 | |
| 28 | frame outline { |
| 29 | table |
| 30 | { dx } |
| 31 | { -1 } |
| 32 | { 1 } |
| 33 | |
| 34 | set x = dx*A/2 |
| 35 | |
| 36 | set y = Yout/2 |
| 37 | |
| 38 | __0: vec @(x, y) |
| 39 | __1: vec @(x, -y) |
| 40 | line __0 . w |
| 41 | } |
| 42 | |
| 43 | frame corner_pad { |
| 44 | set py = Y/2 |
| 45 | |
| 46 | set x = cpx/2 |
| 47 | |
| 48 | set y = Y/2 |
| 49 | |
| 50 | __0: vec @(x, y) |
| 51 | __1: vec @(-x, -y) |
| 52 | pad "0" . __0 |
| 53 | } |
| 54 | |
| 55 | frame corner { |
| 56 | set cpx = 0.65mm |
| 57 | |
| 58 | table |
| 59 | { dx } |
| 60 | { -1 } |
| 61 | { 1 } |
| 62 | |
| 63 | table |
| 64 | { dy } |
| 65 | { -1 } |
| 66 | { 1 } |
| 67 | |
| 68 | set x = dx*((pins/2-1)*e/2+0.3mm+cpx/2) |
| 69 | |
| 70 | set y = (Yi+Yo)/4*dy |
| 71 | |
| 72 | loop if = 1, corners |
| 73 | |
| 74 | __0: vec @(x, y) |
| 75 | frame corner_pad . |
| 76 | } |
| 77 | |
| 78 | frame keepout { |
| 79 | table |
| 80 | { dx } |
| 81 | { -1 } |
| 82 | { 1 } |
| 83 | |
| 84 | set x = ((pins/2-1)*e+X)/2 |
| 85 | |
| 86 | set y = K/2*dx |
| 87 | |
| 88 | loop if = 1, keepout |
| 89 | |
| 90 | __0: vec @(-x, y) |
| 91 | __1: vec @(x, y) |
| 92 | line __0 . w |
| 93 | } |
| 94 | |
| 95 | package "DF40-${pins}${type}" |
| 96 | unit mm |
| 97 | |
| 98 | table |
| 99 | { pins } |
| 100 | { 10 } |
| 101 | { 12 } |
| 102 | { 20 } |
| 103 | { 24 } |
| 104 | { 30 } |
| 105 | { 34 } |
| 106 | { 40 } |
| 107 | { 50 } |
| 108 | { 60 } |
| 109 | { 70 } |
| 110 | { 80 } |
| 111 | { 90 } |
| 112 | { 100 } |
| 113 | |
| 114 | set e = 0.4mm |
| 115 | |
| 116 | set A = pins*e/2+side |
| 117 | |
| 118 | set K = 1.5mm |
| 119 | |
| 120 | set X = 0.2mm |
| 121 | |
| 122 | set Y = (Yo-Yi)/2 |
| 123 | |
| 124 | set w = 5mil |
| 125 | |
| 126 | table |
| 127 | { type, Yi, Yo, Yout, side, keepout, corners } |
| 128 | { "DS", 2.38mm, 3.78mm, 2.94mm, 2.6mm, 1, 0 } |
| 129 | { "DP", 2.05mm, 3.37mm, 1.85mm, 1.52mm, 0, 1 } |
| 130 | |
| 131 | frame pads @ |
| 132 | frame keepout @ |
| 133 | frame outline @ |
| 134 | frame corner @ |
| 135 | measy pad.__1 -> pad.__0 side/2+0.5mm |
| 136 | measx pads.__0 >> pads.__0 -Y/2-0.5mm |
| 137 | measx pad.__1 -> pad.__0 Y+0.5mm |
| 138 | measy keepout.__0 >> keepout.__0 0mm |
| 139 | measx outline.__0 >> outline.__0 0.5mm |
| 140 | measy pad.__1 >> pad.__0 side/2+1mm |
| 141 | measy pad.__0 -> pad.__1 side/2+X+0.5mm |
| 142 | measx corner_pad.__1 -> corner_pad.__0 -0.5mm |
| 143 | measx corner_pad.__0 -> pads.__0 -Y-0.5mm |
| 144 | measy outline.__1 -> outline.__0 -0.5mm |
| 145 |
Branches:
master
