M50-315XX.fpd 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. /* MACHINE-GENERATED ! */
  2. frame mechholes {
  3. table
  4. { x }
  5. { e*(n-2)/2 }
  6. { -e*(n-2)/2 }
  7. set diameter = 0.75mm
  8. __0: vec @(0mm, x)
  9. __1: vec .(-diameter/2, -diameter/2)
  10. __2: vec __0(diameter/2, diameter/2)
  11. hole __1 .
  12. }
  13. frame pinholes {
  14. set x = (ix-0.5)*pitch_x
  15. set y = (iy-(2*n-2)/4)*e*dy
  16. set pin = ix*n+iy+1
  17. table
  18. { ix, dy }
  19. { 0, -1 }
  20. { 1, 1 }
  21. set pitch_x = 1.27mm
  22. set hgx = 2.2mm
  23. set diameter = 0.71mm
  24. loop iy = 0, n-1
  25. __0: vec @(x, y)
  26. __1: vec .(diameter/2, diameter/2)
  27. __2: vec __0(-diameter/2, -diameter/2)
  28. hole . __1
  29. }
  30. frame pads {
  31. set x = (ix-0.5)*(gx+px)
  32. set y = (iy-(2*n-2)/4)*e*dy
  33. set pin = ix*n+iy+1
  34. table
  35. { ix, dy }
  36. { 0, -1 }
  37. { 1, 1 }
  38. loop iy = 0, n-1
  39. __0: vec @(x, y)
  40. __1: vec .(px/2, py/2)
  41. __2: vec __0(-px/2, -py/2)
  42. pad "$pin" . __1
  43. }
  44. frame outline {
  45. set r = 0.1mm
  46. set length = e*n+0.38mm
  47. set width = 3.4mm
  48. __2: vec @(-width/2, length/2)
  49. __0: vec .(-4*r, 4*r)
  50. __1: vec .(0mm, r)
  51. circ __0 . r
  52. __3: vec @(width/2, -length/2)
  53. rect . __2 r
  54. }
  55. package "M50-315$n"
  56. unit mm
  57. set w = 5mil
  58. set e = 1.27mm
  59. set px = 1.65mm
  60. set py = 0.8mm
  61. set gx = 2.2mm
  62. loop n = 3, 40
  63. frame pads @
  64. frame outline @
  65. frame pinholes @
  66. frame mechholes @
  67. measx pads.__2 -> pads.__1 -0.8mm
  68. measx pads.__1 -> pads.__2 -py-0.8mm
  69. measy pads.__2 -> pads.__1 0.8mm
  70. measy pads.__0 -> pads.__0 3mm
  71. measy pads.__1 -> pads.__2 px+0.8mm
  72. measx pads.__2 >> pads.__1 -2mm
  73. measx pinholes.__0 -> pinholes.__0 -0.5mm