--- /dev/null
+/*
+ * Copyright © 2018 Bdale Garbee <bdale@gag.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+load "footprint.5c"
+import Footprint;
+
+real pad_width = 0.48;
+real pad_height = 0.32;
+real pad_one_height = 0.45;
+real pad_spacing = 0.50; /* center to center, along the pads */
+real pad_center = 3.30 - pad_width; /* center to center, across the part */
+
+real center_width = 2.10;
+real center_height = 2.86;
+
+real package_width = 3;
+real package_height = 3;
+
+real pad_x_off = pad_center / 2;
+
+real num_pad = 6; /* per side */
+
+element_start("506CD");
+
+real pad_off(int n) {
+ return pad_spacing * (n - (num_pad - 1) / 2);
+}
+
+/*
+real dot_off = -.3;
+
+line(-package_width/2 + dot_off, -package_height/2 + dot_off,
+ -package_width/2 + dot_off, -package_height/2 + dot_off);
+*/
+
+for (int pad = 0; pad < num_pad; pad++) {
+ /* left side */
+
+ if (pad == 0) {
+ pad_mm(-pad_x_off,
+ pad_off(pad) - (pad_one_height - pad_height)/2,
+ pad_width,
+ pad_one_height,
+ sprintf("%d", 1),
+ sprintf("%d", 1));
+ } else {
+ pad_mm(-pad_x_off,
+ pad_off(pad),
+ pad_width,
+ pad_height,
+ sprintf("%d", pad + 1),
+ sprintf("%d", pad + 1));
+ }
+
+ /* right side */
+
+ pad_mm(pad_x_off,
+ -pad_off(pad),
+ pad_width,
+ pad_height,
+ sprintf("%d", pad + num_pad + 1),
+ sprintf("%d", pad + num_pad + 1));
+
+}
+
+/* center pad */
+pad_mm(0, 0,
+ center_width,
+ center_height,
+ "13", "13");
+
+element_end();
v 20180820 2
-P 2400 2500 2100 2500 1 0 0
+P 3400 2500 3100 2500 1 0 0
{
-T 2400 2500 5 10 0 0 0 6 1
+T 3400 2500 5 10 0 0 0 6 1
pintype=pas
-T 2045 2495 5 10 1 1 0 6 1
+T 3045 2495 5 10 1 1 0 6 1
pinlabel=VIN
-T 2195 2545 5 10 1 1 0 0 1
+T 3195 2545 5 10 1 1 0 0 1
pinnumber=13
}
-B 300 0 1800 3200 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
-T 595 2595 8 10 0 1 0 0 1
+B 1300 0 1800 3200 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+T 1595 2595 8 10 0 1 0 0 1
device=IC
-T 295 3295 8 10 1 1 0 0 1
+T 1295 3295 8 10 1 1 0 0 1
refdes=U?
-P 2400 100 2100 100 1 0 0
+P 3400 100 3100 100 1 0 0
{
-T 2400 100 5 10 0 0 0 0 1
+T 3400 100 5 10 0 0 0 0 1
pintype=pas
-T 2045 95 5 10 1 1 0 6 1
+T 3045 95 5 10 1 1 0 6 1
pinlabel=BLEED
-T 2195 145 5 10 1 1 0 0 1
+T 3195 145 5 10 1 1 0 0 1
pinnumber=7
}
-P 0 2100 300 2100 1 0 0
+P 1000 2100 1300 2100 1 0 0
{
-T 0 2100 5 10 0 0 0 0 1
+T 1000 2100 5 10 0 0 0 0 1
pintype=in
-T 355 2095 5 10 1 1 0 0 1
+T 1355 2095 5 10 1 1 0 0 1
pinlabel=EN
-T 205 2145 5 10 1 1 0 6 1
+T 1205 2145 5 10 1 1 0 6 1
pinnumber=2
}
-P 2400 2100 2100 2100 1 0 0
+P 3400 2100 3100 2100 1 0 0
{
-T 2400 2100 5 10 0 0 0 0 1
+T 3400 2100 5 10 0 0 0 0 1
pintype=pas
-T 2045 2095 5 10 1 1 0 6 1
+T 3045 2095 5 10 1 1 0 6 1
pinlabel=VOUT
-T 2195 2145 5 10 1 1 0 0 1
+T 3195 2145 5 10 1 1 0 0 1
pinnumber=8
}
-P 0 1300 300 1300 1 0 0
+P 1000 1300 1300 1300 1 0 0
{
-T 0 1300 5 10 0 0 0 6 1
+T 1000 1300 5 10 0 0 0 6 1
pintype=pas
-T 355 1295 5 10 1 1 0 0 1
+T 1355 1295 5 10 1 1 0 0 1
pinlabel=SR
-T 205 1345 5 10 1 1 0 6 1
+T 1205 1345 5 10 1 1 0 6 1
pinnumber=5
}
-P 0 100 300 100 1 0 0
+P 1000 100 1300 100 1 0 0
{
-T 0 100 5 10 0 0 0 0 1
+T 1000 100 5 10 0 0 0 0 1
pintype=pwr
-T 355 95 5 10 1 1 0 0 1
+T 1355 95 5 10 1 1 0 0 1
pinlabel=GND
-T 205 145 5 10 1 1 0 6 1
+T 1205 145 5 10 1 1 0 6 1
pinnumber=4
}
-P 0 2900 300 2900 1 0 0
+P 1000 2900 1300 2900 1 0 0
{
-T 0 2900 5 10 0 0 0 0 1
+T 1000 2900 5 10 0 0 0 0 1
pintype=pwr
-T 355 2895 5 10 1 1 0 0 1
+T 1355 2895 5 10 1 1 0 0 1
pinlabel=VCC
-T 205 2945 5 10 1 1 0 6 1
+T 1205 2945 5 10 1 1 0 6 1
pinnumber=3
}
-P 0 1700 300 1700 1 0 0
+P 1000 1700 1300 1700 1 0 0
{
-T 0 1700 5 10 0 0 0 0 1
+T 1000 1700 5 10 0 0 0 0 1
pintype=out
-T 355 1695 5 10 1 1 0 0 1
+T 1355 1695 5 10 1 1 0 0 1
pinlabel=PG
-T 205 1745 5 10 1 1 0 6 1
+T 1205 1745 5 10 1 1 0 6 1
pinnumber=6
}
-P 2400 2900 2100 2900 1 0 0
+P 3400 2900 3100 2900 1 0 0
{
-T 2400 2900 5 10 0 0 0 6 1
+T 3400 2900 5 10 0 0 0 6 1
pintype=pas
-T 2045 2895 5 10 1 1 0 6 1
+T 3045 2895 5 10 1 1 0 6 1
pinlabel=VIN
-T 2195 2945 5 10 1 1 0 0 1
+T 3195 2945 5 10 1 1 0 0 1
pinnumber=1
}
-P 2400 1700 2100 1700 1 0 0
+P 3400 1700 3100 1700 1 0 0
{
-T 2400 1700 5 10 0 0 0 0 1
+T 3400 1700 5 10 0 0 0 0 1
pintype=pas
-T 2045 1695 5 10 1 1 0 6 1
+T 3045 1695 5 10 1 1 0 6 1
pinlabel=VOUT
-T 2195 1745 5 10 1 1 0 0 1
+T 3195 1745 5 10 1 1 0 0 1
pinnumber=9
}
-P 2400 1300 2100 1300 1 0 0
+P 3400 1300 3100 1300 1 0 0
{
-T 2400 1300 5 10 0 0 0 0 1
+T 3400 1300 5 10 0 0 0 0 1
pintype=pas
-T 2045 1295 5 10 1 1 0 6 1
+T 3045 1295 5 10 1 1 0 6 1
pinlabel=VOUT
-T 2195 1345 5 10 1 1 0 0 1
+T 3195 1345 5 10 1 1 0 0 1
pinnumber=10
}
-P 2400 900 2100 900 1 0 0
+P 3400 900 3100 900 1 0 0
{
-T 2400 900 5 10 0 0 0 0 1
+T 3400 900 5 10 0 0 0 0 1
pintype=pwr
-T 2045 895 5 10 1 1 0 6 1
+T 3045 895 5 10 1 1 0 6 1
pinlabel=VOUT
-T 2195 945 5 10 1 1 0 0 1
+T 3195 945 5 10 1 1 0 0 1
pinnumber=11
}
-P 2400 500 2100 500 1 0 0
+P 3400 500 3100 500 1 0 0
{
-T 2400 500 5 10 0 0 0 0 1
+T 3400 500 5 10 0 0 0 0 1
pintype=pas
-T 2045 495 5 10 1 1 0 6 1
+T 3045 495 5 10 1 1 0 6 1
pinlabel=VOUT
-T 2195 545 5 10 1 1 0 0 1
+T 3195 545 5 10 1 1 0 0 1
pinnumber=12
}
+T 1332 3600 8 10 0 0 0 0 1
+datasheet=onsemi/NCP45560-D.PDF
+T 1332 3900 8 10 0 0 0 0 1
+footprint=506CD