X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=packages%2Fqfn16-3x3.5c;h=4d860a0175ae1c503b3252496afe1adaaa1d1806;hb=3dab9bbb77b5d25763cea85327f3fb86fb66e9d2;hp=fedd52c24f43f119d3a34a9cdeeacc9e213952ef;hpb=3d2d2d7519373bb06279a973ac44ee5817435d0c;p=hw%2Faltusmetrum diff --git a/packages/qfn16-3x3.5c b/packages/qfn16-3x3.5c index fedd52c..4d860a0 100644 --- a/packages/qfn16-3x3.5c +++ b/packages/qfn16-3x3.5c @@ -61,86 +61,52 @@ 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 (pad = 0; pad < num_pad; pad++) { +for (int pad = 0; pad < num_pad; pad++) { /* left side (1-4) */ - pad_mm_clear(-pad_x_off - pad_width / 2, - pad_off(pad), - pad_width, - pad_height, - pad_clearance, - sprintf("%d", pad + 1), - sprintf("%d", pad + 1)); + pad_mm(-pad_x_off - pad_width / 2, + pad_off(pad), + pad_width, + pad_height, + sprintf("%d", pad + 1), + sprintf("%d", pad + 1)); /* bottom (5-8) */ - pad_mm_clear(pad_off(pad), - pad_y_off + pad_width / 2, - pad_height, - pad_width, - pad_clearance, - sprintf("%d", pad + 5), - sprintf("%d", pad + 5)); + pad_mm(pad_off(pad), + pad_y_off + pad_width / 2, + pad_height, + pad_width, + sprintf("%d", pad + 5), + sprintf("%d", pad + 5)); /* right side (9-12) */ - pad_mm_clear(pad_x_off + pad_width / 2, - -pad_off(pad), - pad_width, - pad_height, - pad_clearance, - sprintf("%d", pad + 9), - sprintf("%d", pad + 9)); + pad_mm(pad_x_off + pad_width / 2, + -pad_off(pad), + pad_width, + pad_height, + sprintf("%d", pad + 9), + sprintf("%d", pad + 9)); /* top (13-16) */ - pad_mm_clear(-pad_off(pad), - -pad_y_off - pad_width / 2, - pad_height, - pad_width, - pad_clearance, - sprintf("%d", pad + 13), - sprintf("%d", pad + 13)); - + pad_mm(-pad_off(pad), + -pad_y_off - pad_width / 2, + pad_height, + pad_width, + sprintf("%d", pad + 13), + sprintf("%d", pad + 13)); } -int pad_blocks = 3; - -real block_width = center_width / pad_blocks; -real block_height = center_height / pad_blocks; - -real block_x(int x) = (x - (pad_blocks - 1)/2) * block_width; -real block_y(int y) = (y - (pad_blocks - 1)/2) * block_height; - -bool via_block(int x, int y) { - return (x & 1) == 0 && (y & 1) == 0; -} - -real via_hole = 13/1000 * 25.4; /* 13 mil drill */ -real via_copper = 7/1000 * 25.4; /* 5.6 mil anulus */ - -for (int pad_y = 0; pad_y < pad_blocks; pad_y++) { - for (int pad_x = 0; pad_x < pad_blocks; pad_x++) - if (via_block(pad_x, pad_y)) { - pin_mm_clear_mask(block_x(pad_x), block_y(pad_y), - via_hole, via_hole + 2 * via_copper, pad_clearance, 0, - "GND", "GND"); - pad_mm_clear_mask_options(block_x(pad_x), block_y(pad_y), - block_width, block_height, - pad_clearance, 0, - "GND", "GND","square,nopaste"); - } else { - /* full square of metal */ - pad_mm_clear_options(block_x(pad_x), block_y(pad_y), - block_width, block_height, - 0, - "GND", "GND","square,nopaste"); - /* 1/4 full of solder paste */ - pad_mm_clear_options(block_x(pad_x), block_y(pad_y), - block_width/2, block_height/2, - 0, - "GND", "GND","square"); - } -} +center_pad((center_t) { + .x = 0, + .y = 0, + .width = center_width, + .height = center_height, + .via_cols = 2, + .via_rows = 2, + .name = "GND" + }); element_end();