From dfcaa9dba51be5ed4007b7081440ad77f4243d23 Mon Sep 17 00:00:00 2001 From: Adam Wang Date: Tue, 29 May 2012 10:34:38 +0800 Subject: [PATCH] tsop.fpd: added new TSOP module --- modules/INFO | 17 ++++++++++ modules/tsop.fpd | 81 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 modules/tsop.fpd diff --git a/modules/INFO b/modules/INFO index 0925f05..fae01e1 100644 --- a/modules/INFO +++ b/modules/INFO @@ -170,3 +170,20 @@ F: ir # - the TSOP322.., TSOP324.., TSOP348.., TSOP344.. data sheet # http://www.vishay.com/docs/81732/tsop348.pdf +# "Generic" simple TSOP +F: tsop +# +# - the JS28F256J3F105 data sheet, it's TSOP-56 +# http://www.micron.com/parts/nor-flash/parallel-nor-flash/~/media/Documents/Products/Data%20Sheet/NOR%20Flash/6062319942_J3_65_256M_MLC_DS.ashx +# +# according to MAXIM web: http://www.maxim-ic.com/design/packaging/ +# the TSOP32 referred to the same package drawing and land pattern +# +# - TSOP32: Z32 -> package drawing +# http://pdfserv.maxim-ic.com/package_dwgs/21-0274.PDF +# +# - TSOP32: Z32 -> package land pattern +# http://pdfserv.maxim-ic.com/land_patterns/90-0320.PDF +# + + diff --git a/modules/tsop.fpd b/modules/tsop.fpd new file mode 100644 index 0000000..1d69b68 --- /dev/null +++ b/modules/tsop.fpd @@ -0,0 +1,81 @@ +/* MACHINE-GENERATED ! */ + +frame pin { + __0: vec @(pad_w/2, C/2) + __1: vec @(-pad_w/2, -C/2) + pad "$n" . __0 +} + +frame pins_top { + set n = N-i + + __0: vec @(x, 0mm) + frame pin . +} + +frame pins_bottom { + set n = i+1 + + __0: vec @(x, 0mm) + frame pin . +} + +frame pins { + set y = W/2 + + set x = (i-(N/2-1)/2)*Pitch + + loop i = 0, N/2-1 + + __0: vec @(0mm, y) + frame pins_top . + __1: vec @(0mm, -y) + frame pins_bottom . +} + +frame marker { + set r = ((N/2-1)*Pitch-x)/2-w + + __0: vec @(-x/2-1.5*Z, -(y/2-C/4)) + __1: vec .(-r/3, 0mm) + circ __0 . w +} + +frame outline { + set w = 5mil + + set x = E + + set y = D1 + + __0: vec @(x/2, y/2-C/4) + __1: vec @(-x/2, -(y/2-C/4)) + rect . __0 w + __2: vec @(-x/2, D1/2) + __3: vec @(-x/2, -D1/2) + frame marker @ +} + +package "$name-$N" +unit mm + +set Pitch = 0.5mm + +set pad_w = 0.27mm + +table + { name, N, A, B, C, D, D1, E, W, Z } + { "TSOP", 56, 6.8mm, 18.1mm, 1.39mm, 20mm, 18.4mm, 14mm, 19.49mm, 0.25mm } + +frame outline @ +frame pins @ +measy pin.__1 -> pin.__0 1mm +measy pin.__1 >> pin.__0 -E-3mm +measy pin.__0 >> pin.__1 -E-1mm +measx pin.__1 -> pin.__0 -Pitch +measx pins_top.__0 -> pins_top.__0 -2mm +measy pins.__0 << pins_bottom.__0 -2.5mm +measy outline.__0 >> outline.__1 -E-C +measx outline.__1 >> outline.__0 8mm +measx pins_bottom.__0 >> outline.__1 -2mm +measy outline.__2 >> outline.__3 -3mm