xtal-4.fpd 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /* MACHINE-GENERATED ! */
  2. frame pad {
  3. __0: vec @(Px/2, Py/2)
  4. __1: vec @(-Px/2, -Py/2)
  5. pad "$pin" . __0
  6. }
  7. frame pads {
  8. table
  9. { pin, dx, dy }
  10. { 1, -1, -1 }
  11. { 2, 1, -1 }
  12. { 3, 1, 1 }
  13. { 4, -1, 1 }
  14. __0: vec @(dx*Gx/2, dy*Gy/2)
  15. frame pad .
  16. }
  17. frame marker {
  18. __0: vec @(-(Gx/2)-Px+2*w, -Gy/2)
  19. __1: vec .(0mm, -2*w)
  20. circ . __0 w
  21. }
  22. frame outline {
  23. table
  24. { px, py, x, y }
  25. { 0mm, Dy/2, Gx-Px-2*w, 0mm }
  26. { 0mm, -Dy/2, Gx-Px-2*w, 0mm }
  27. { -Dx/2, 0mm, 0mm, Gy-Py-2*w }
  28. { Dx/2, 0mm, 0mm, Gy-Py-2*w }
  29. __0: vec @(px, py)
  30. __1: vec .(x/2, y/2)
  31. __2: vec __0(-x/2, -y/2)
  32. line . __1 w
  33. }
  34. package "xtal4-${Dx}x${Dy}"
  35. unit mm
  36. table
  37. { Dx, Dy, Gx, Gy, Px, Py }
  38. { 3.2mm, 2.5mm, 2.2mm, 1.6mm, 1.4mm, 1.2mm }
  39. { 5mm, 3.2mm, 2.54mm, 2.2mm, 1.4mm, 1.2mm }
  40. { 6mm, 3.6mm, 4.4mm, 2.4mm, 1.8mm, 1.4mm }
  41. set w = 5mil
  42. frame pads @
  43. frame outline @
  44. frame marker @
  45. measx pads.__0 -> pads.__0 1mm+Py/2+Gy
  46. measy pads.__0 -> pads.__0 -1mm-Px/2-Gx
  47. measy pad.__1 -> pad.__0 1mm
  48. measx pad.__1 -> pad.__0 -1mm
  49. measx outline.__0 >> outline.__0 Gy/2+Py/2+1.5mm
  50. measy outline.__0 >> outline.__0 -(Gx/2+Px/2+1.5mm)