123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- /* MACHINE-GENERATED ! */
- frame pad {
- set px = X/2
- set py = Y/2
- __0: vec @(px, py)
- __1: vec @(-px, -py)
- pad "$n" . __0
- }
- frame pads {
- set x = e*(xi-pins/4+0.5)
- set y = (Yi+Yo)/2*(yi-0.5)
- set n = 2*xi+yi+1
- loop xi = 0, pins/2-1
- loop yi = 0, 1
- __0: vec @(x, y)
- frame pad .
- }
- frame outline {
- table
- { dx }
- { -1 }
- { 1 }
- set x = dx*A/2
- set y = Yout/2
- __0: vec @(x, y)
- __1: vec @(x, -y)
- line __0 . w
- }
- frame corner_pad {
- set py = Y/2
- set x = cpx/2
- set y = Y/2
- __0: vec @(x, y)
- __1: vec @(-x, -y)
- pad "0" . __0
- }
- frame corner {
- set cpx = 0.65mm
- table
- { dx }
- { -1 }
- { 1 }
- table
- { dy }
- { -1 }
- { 1 }
- set x = dx*((pins/2-1)*e/2+0.3mm+cpx/2)
- set y = (Yi+Yo)/4*dy
- loop if = 1, corners
- __0: vec @(x, y)
- frame corner_pad .
- }
- frame keepout {
- table
- { dx }
- { -1 }
- { 1 }
- set x = ((pins/2-1)*e+X)/2
- set y = K/2*dx
- loop if = 1, keepout
- __0: vec @(-x, y)
- __1: vec @(x, y)
- line __0 . w
- }
- package "DF40-${pins}${type}"
- unit mm
- table
- { pins }
- { 10 }
- { 12 }
- { 20 }
- { 24 }
- { 30 }
- { 34 }
- { 40 }
- { 50 }
- { 60 }
- { 70 }
- { 80 }
- { 90 }
- { 100 }
- set e = 0.4mm
- set A = pins*e/2+side
- set K = 1.5mm
- set X = 0.2mm
- set Y = (Yo-Yi)/2
- set w = 5mil
- table
- { type, Yi, Yo, Yout, side, keepout, corners }
- { "DS", 2.38mm, 3.78mm, 2.94mm, 2.6mm, 1, 0 }
- { "DP", 2.05mm, 3.37mm, 1.85mm, 1.52mm, 0, 1 }
- frame pads @
- frame keepout @
- frame outline @
- frame corner @
- measy pad.__1 -> pad.__0 side/2+0.5mm
- measx pads.__0 >> pads.__0 -Y/2-0.5mm
- measx pad.__1 -> pad.__0 Y+0.5mm
- measy keepout.__0 >> keepout.__0 0mm
- measx outline.__0 >> outline.__0 0.5mm
- measy pad.__1 >> pad.__0 side/2+1mm
- measy pad.__0 -> pad.__1 side/2+X+0.5mm
- measx corner_pad.__1 -> corner_pad.__0 -0.5mm
- measx corner_pad.__0 -> pads.__0 -Y-0.5mm
- measy outline.__1 -> outline.__0 -0.5mm
|