ssop.fpd 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /* MACHINE-GENERATED ! */
  2. frame pin {
  3. __0: vec @(D/2, C/2)
  4. __1: vec @(-D/2, -C/2)
  5. pad "$n" . __0
  6. }
  7. frame pins_top {
  8. set n = N-i
  9. __0: vec @(x, 0mm)
  10. frame pin .
  11. }
  12. frame pins_bottom {
  13. set n = i+1
  14. __0: vec @(x, 0mm)
  15. frame pin .
  16. }
  17. frame pins {
  18. set y = (A+B)/4
  19. set x = (i-(N/2-1)/2)*P
  20. loop i = 0, N/2-1
  21. __0: vec @(0mm, y)
  22. frame pins_top .
  23. __1: vec @(0mm, -y)
  24. frame pins_bottom .
  25. }
  26. frame outline {
  27. set w = 5mil
  28. table
  29. { r, d }
  30. { 0.3mm, 2*r }
  31. __0: vec @(H/2, F/2)
  32. __1: vec @(-H/2, -F/2)
  33. rect . __0 w
  34. __2: vec @(-(H/2+2*r), -(A+B)/4)
  35. __3: vec .(r, 0mm)
  36. circ __2 . w
  37. }
  38. package "$name-$N"
  39. unit mm
  40. set P = 0.65mm
  41. set D = 0.4mm
  42. table
  43. { name, N, A, B, C, F, H }
  44. { "SSOP", 14, 8.1mm, 5.7mm, 1.2mm, 8.35mm, 4.55mm }
  45. { "SSOP", 16, 8.1mm, 5.7mm, 1.2mm, 8.35mm, 5.2mm }
  46. { "SSOP", 20, 8.1mm, 5.9mm, 1.1mm, 8.35mm, 6.5mm }
  47. { "SSOP", 24, 8.1mm, 5.9mm, 1.1mm, 8.35mm, 7.8mm }
  48. { "SSOP", 28, 8.1mm, 5.9mm, 1.1mm, 8.35mm, 9.1mm }
  49. { "TSSOP", 14, 6.8mm, 4.6mm, 1.1mm, 7.05mm, 5mm }
  50. { "TSSOP", 16, 6.8mm, 4.6mm, 1.1mm, 7.05mm, 5.5mm }
  51. { "TSSOP", 20, 6.8mm, 4.6mm, 1.1mm, 7.05mm, 6.75mm }
  52. frame outline @
  53. frame pins @
  54. measy outline.__1 >> outline.__0 2mm
  55. measx outline.__1 >> outline.__0 F+1mm
  56. measy pin.__1 -> pin.__0 1.5mm
  57. measy pin.__1 >> pin.__0 -H-2mm
  58. measy pin.__0 >> pin.__1 -H
  59. measx pin.__1 -> pin.__0 -1mm
  60. measx pins_top.__0 -> pins_top.__0 -2mm
  61. measy pins.__0 << pins_bottom.__0 -2mm