From 6359c57daddacd5ff0aca0f77d7d2acd6fc480ae Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Thu, 25 Apr 2013 18:23:12 -0600 Subject: [PATCH] merge symbols and footprints needed for TeleTerra --- packages/KSCJ.py | 67 ++++++++++ packages/Makefile | 6 +- packages/NHD-C0216.py | 131 +++++++++++++++++++ packages/PNswitchDPDT.py | 130 ++++++++++++++++++ packages/TI-QFN36.py | 136 +++++++++++++++++++ packages/testpoint.fp | 5 + symbols/common/switch-dpst.sym | 51 ++++++++ symbols/common/switch-no-push.sym | 38 ++++++ symbols/newhaven/NHD-C0216.sym | 211 ++++++++++++++++++++++++++++++ 9 files changed, 774 insertions(+), 1 deletion(-) create mode 100755 packages/KSCJ.py create mode 100755 packages/NHD-C0216.py create mode 100755 packages/PNswitchDPDT.py create mode 100755 packages/TI-QFN36.py create mode 100644 packages/testpoint.fp create mode 100644 symbols/common/switch-dpst.sym create mode 100644 symbols/common/switch-no-push.sym create mode 100644 symbols/newhaven/NHD-C0216.sym diff --git a/packages/KSCJ.py b/packages/KSCJ.py new file mode 100755 index 0000000..07a2d27 --- /dev/null +++ b/packages/KSCJ.py @@ -0,0 +1,67 @@ +#!/usr/bin/python +# Copyright 2007 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for C&K KSCJ SPST switch +# + +# dimensions in mm from C&K KSC_31aug10.pdf datasheet + +PadHeight = 1.0 +PadWidth = 2.8 +HSpacing = 4.0 +WSpacing = 3.0 + +import sys + +# we're going to use the 1/100 of a mil fundamental unit form +def mm2mils100( mm ): + return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 ) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "PCM12SMTR" "" "" 0 0 0 0 0 100 0x0]' +print "(" +print ' Pad[',\ + mm2mils100(WSpacing/2 + PadHeight/2), \ + mm2mils100(-HSpacing/2), \ + mm2mils100(WSpacing/2 + PadWidth - PadHeight/2), \ + mm2mils100(-HSpacing/2), \ + mm2mils100(PadHeight), \ + 0, \ + mm2mils100(PadHeight)+600, \ + '"pin2" "2" 0x0100]' + +print ' Pad[',\ + mm2mils100(WSpacing/2 + PadHeight/2), \ + mm2mils100(HSpacing/2), \ + mm2mils100(WSpacing/2 + PadWidth - PadHeight/2), \ + mm2mils100(HSpacing/2), \ + mm2mils100(PadHeight), \ + 0, \ + mm2mils100(PadHeight)+600, \ + '"pin1" "1" 0x0100]' + +print ' Pad[',\ + mm2mils100(-WSpacing/2 - PadHeight/2), \ + mm2mils100(HSpacing/2), \ + mm2mils100(-WSpacing/2 - PadWidth + PadHeight/2), \ + mm2mils100(HSpacing/2), \ + mm2mils100(PadHeight), \ + 0, \ + mm2mils100(PadHeight)+600, \ + '"pin1" "1" 0x0100]' + +print ' Pad[',\ + mm2mils100(-WSpacing/2 - PadHeight/2), \ + mm2mils100(-HSpacing/2), \ + mm2mils100(-WSpacing/2 - PadWidth + PadHeight/2), \ + mm2mils100(-HSpacing/2), \ + mm2mils100(PadHeight), \ + 0, \ + mm2mils100(PadHeight)+600, \ + '"pin2" "2" 0x0100]' + +print ")" diff --git a/packages/Makefile b/packages/Makefile index d78e4c4..71e8af7 100644 --- a/packages/Makefile +++ b/packages/Makefile @@ -26,6 +26,7 @@ FOOTPRINTS= \ MPU6000.fp \ UBLOX-MAX.fp \ TI-QFN32.fp \ + TI-QFN36.fp \ TI-QFN32-new.fp \ NDK32.fp \ sma-edge.fp \ @@ -34,7 +35,10 @@ FOOTPRINTS= \ ti-qfn20.fp \ qfn-16.fp \ ap.10g.fp \ - BTM182.fp + BTM182.fp \ + PNswitchDPDT.fp \ + NHD-C0216.fp \ + KSCJ.fp .5c.fp: nickle $*.5c > $@ diff --git a/packages/NHD-C0216.py b/packages/NHD-C0216.py new file mode 100755 index 0000000..eaf7af4 --- /dev/null +++ b/packages/NHD-C0216.py @@ -0,0 +1,131 @@ +#!/usr/bin/python +# Copyright 2010 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for NHD-C0216CU-FN-GBW-3V 2x16 text LCD +# + +# dimensions in mm from Newhaven Display International datasheet +BodyWidth = 49.7 +BodyHeight = 25.3 +PinDiam = 0.72 # 0.50 +- 0.5 x 0.30 +- 0.05 rectangular pins + # worst case 0.66mm diagonal, plus some slack +PinSpacing = 1.50 +Pins = 17 +ViewWidth = 45.70 +ViewHeight = 14.30 +ViewHCtr = (BodyHeight/2) - (18.30 / 2) + +import sys + +# we're going to use the 1/100 of a mil fundamental unit form +def mm2mils100( mm ): + return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 ) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "NHD-C0216" "" "" 0 0 0 0 0 100 0x0]' +print "(" + +# pins + # pin( x y thickness clearance mask drillhole name number flags) +for pin in range (1,Pins+1): + if pin == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + + print ' Pin[',\ + mm2mils100((pin - 9)*PinSpacing), \ + mm2mils100(-BodyHeight/2), \ + mm2mils100(PinDiam * 1.75), \ + 1200, \ + mm2mils100(PinDiam * 1.75) + 600, \ + mm2mils100(PinDiam), \ + '"pin%i"' % (pin), '"%i"' % (pin), Flags, ']' + +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + -mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + 500, \ + ']' + +# mark viewable area +# ViewWidth = 45.70 +# ViewHeight = 14.30 +# ViewHCtr = BodyHeight - (18.30 / 2) + +print ' ElementLine[',\ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + 500, \ + ']' + +print ' ElementLine[',\ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + 500, \ + ']' + +print ' ElementLine[',\ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + 500, \ + ']' + +print ' ElementLine[',\ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + 500, \ + ']' + +print ' ElementLine[',\ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + 500, \ + ']' + +print ' ElementLine[',\ + mm2mils100(-ViewWidth/2), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ + mm2mils100(ViewWidth/2), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ + 500, \ + ']' + +print ")" diff --git a/packages/PNswitchDPDT.py b/packages/PNswitchDPDT.py new file mode 100755 index 0000000..db4eb8a --- /dev/null +++ b/packages/PNswitchDPDT.py @@ -0,0 +1,130 @@ +#!/usr/bin/python +# Copyright 2010 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for C&K PN22SJNA03QE DPDT switch +# + +# dimensions in mm from footprint drawing at DigiKey +BodyWidth = 12 # body outline +BodyHeight = 6.8 +PinSpace = 2.49 +PinDiam = 0.89 +MntWidth = 11.40 +MntHeight = 4.19 +MntDiam = 1.50 + +import sys + +# we're going to use the 1/100 of a mil fundamental unit form +def mm2mils100( mm ): + return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 ) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "PN22SJNA03QE" "" "" 0 0 0 0 0 100 0x0]' +print "(" +print ' Pin[',\ + mm2mils100(-PinSpace), \ + mm2mils100(-PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin1" "1" 0x0101]' + +print ' Pin[',\ + mm2mils100(0), \ + mm2mils100(-PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin2" "2" 0x0001]' + +print ' Pin[',\ + mm2mils100(PinSpace), \ + mm2mils100(-PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin3" "3" 0x0001]' + +print ' Pin[',\ + mm2mils100(PinSpace), \ + mm2mils100(PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin6" "6" 0x0001]' + +print ' Pin[',\ + mm2mils100(0), \ + mm2mils100(PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin5" "5" 0x0001]' + +print ' Pin[',\ + mm2mils100(-PinSpace), \ + mm2mils100(PinSpace/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(PinDiam), \ + '"pin4" "4" 0x0001]' + +print ' Pin[',\ + mm2mils100(-MntWidth/2), \ + mm2mils100(MntHeight/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(MntDiam), \ + '"pin7" "G" 0x0001]' + +print ' Pin[',\ + mm2mils100(MntWidth/2), \ + mm2mils100(-MntHeight/2), \ + mm2mils100(2), \ + mm2mils100(1), \ + mm2mils100(2.2), \ + mm2mils100(MntDiam), \ + '"pin8" "G" 0x0001]' + +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + -mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + -mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + 500, \ + ']' +print ' ElementLine[',\ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + -mm2mils100(BodyHeight/2), \ + 500, \ + ']' + +print ")" diff --git a/packages/TI-QFN36.py b/packages/TI-QFN36.py new file mode 100755 index 0000000..877143c --- /dev/null +++ b/packages/TI-QFN36.py @@ -0,0 +1,136 @@ +#!/usr/bin/python +# Copyright 2008 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for QFN36 package used by TI CC1111 +# + +# dimensions in mm from the TI cc1111f32.pdf datasheet +PinWidth = 0.28 +PinResist = 0.381 # width of gap in solder resist over pad +PinHeight = 0.75 +PinSpacing = 0.50 +Overall = 6.30 +GndSquare = 4.40 +CoreSquare = 3.7592 # resist gaps and paste spots over ground tab +PinSquare = 4.80 + +import sys + +# we're going to use the 1/100 of a mil fundamental unit form +def mm2mils100( mm ): + return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 ) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "QFN36" "" "" 0 0 0 0 0 100 0x0]' +print "(" + +# pad under the chip, must be grounded +print ' Pad[',\ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(GndSquare), \ + 0, \ + 0, \ + '"pin37" "37" "square,nopaste"]' + +# vias in the ground pad under the chip +for viarow in range (-1,2): + for viacol in range (-1,2): + print ' Pin[',\ + mm2mils100(2 * viacol * CoreSquare / 5), \ + mm2mils100(2 * viarow * CoreSquare / 5), \ + 2900, \ + 2500, \ + 0, \ + 1500, \ + '"pin37" "37" 0x0002]' + +# break pad under chip into a grid to control the resist and paste masks +for viarow in range (-2, 3): + for viacol in range (-2, 3): + if (viarow in (-2, 0, 2)) and (viacol in (-2, 0, 2)): + # copper sub-square with resist over vias + print ' Pad[',\ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + mm2mils100((CoreSquare)/5), \ + 0, \ + 0, \ + '"pin37" "37" "square,nopaste"]' + else: + # copper sub-square without resist + print ' Pad[',\ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + mm2mils100((CoreSquare)/5), \ + 0, \ + mm2mils100((CoreSquare)/5), \ + '"pin37" "37" "square,nopaste"]' + # copper spot to control paste mask generation + print ' Pad[',\ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + mm2mils100(viacol * CoreSquare / 5), \ + mm2mils100(viarow * CoreSquare / 5), \ + 1500, \ + 0, \ + mm2mils100((CoreSquare)/5), \ + '"pin37" "37" "square"]' + +# pins +for pin in range (1,10): + print ' Pad[',\ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(-Overall/2 + PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(-Overall/2 + PinHeight - PinWidth/2), \ + mm2mils100(PinWidth), \ + mm2mils100(PinSpacing - PinWidth), \ + mm2mils100(PinResist), \ + '"pin%i"' % (28-pin), '"%i"' % (28-pin), '0x0000]' + + print ' Pad[',\ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(+Overall/2 - PinHeight + PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(+Overall/2 - PinWidth/2), \ + mm2mils100(PinWidth), \ + mm2mils100(PinSpacing - PinWidth), \ + mm2mils100(PinResist), \ + '"pin%i"' % pin, '"%i"' % pin, '0x0000]' + + print ' Pad[',\ + mm2mils100(Overall/2 - PinHeight + PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(Overall/2 - PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(PinWidth), \ + mm2mils100(PinSpacing - PinWidth), \ + mm2mils100(PinResist), \ + '"pin%i"' % (19-pin), '"%i"' % (19-pin), '0x0000]' + + print ' Pad[',\ + mm2mils100(-Overall/2 + PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(-Overall/2 + PinHeight - PinWidth/2), \ + mm2mils100(-2.5 + pin * PinSpacing), \ + mm2mils100(PinWidth), \ + mm2mils100(PinSpacing - PinWidth), \ + mm2mils100(PinResist), \ + '"pin%i"' % (27+pin), '"%i"' % (27+pin), '0x0000]' + +print ' ElementArc[',\ + mm2mils100(-2.6), \ + mm2mils100(2.6), \ + '500 500 0 360 1000 ]' +print ")" diff --git a/packages/testpoint.fp b/packages/testpoint.fp new file mode 100644 index 0000000..b0bbdaf --- /dev/null +++ b/packages/testpoint.fp @@ -0,0 +1,5 @@ +Element["" "TestPoint" "" "unknown" 0 0 0 0 0 100 ""] +( + Pin[0 0 3000 1200 4000 1500 "1" "1" ""] +# ElementArc [0 0 6000 6000 0 360 1500] +) diff --git a/symbols/common/switch-dpst.sym b/symbols/common/switch-dpst.sym new file mode 100644 index 0000000..ca1ae38 --- /dev/null +++ b/symbols/common/switch-dpst.sym @@ -0,0 +1,51 @@ +v 20110115 2 +L 300 200 500 0 3 0 0 0 -1 -1 +T 400 700 5 10 0 0 0 0 1 +device=SPST +P 500 0 800 0 1 0 1 +{ +T 650 50 5 8 1 1 0 0 1 +pinnumber=5 +T 650 50 5 8 0 0 0 0 1 +pinseq=2 +T 650 50 5 8 0 1 0 0 1 +pinlabel=2 +T 650 50 5 8 0 1 0 0 1 +pintype=pas +} +P 300 0 0 0 1 0 1 +{ +T 100 50 5 8 1 1 0 0 1 +pinnumber=4 +T 100 50 5 8 0 0 0 0 1 +pinseq=1 +T 100 50 5 8 0 1 0 0 1 +pinlabel=1 +T 100 50 5 8 0 1 0 0 1 +pintype=pas +} +T 300 700 8 10 1 1 0 0 1 +refdes=S? +P 300 400 0 400 1 0 1 +{ +T 100 450 5 8 1 1 0 0 1 +pinnumber=1 +T 100 450 5 8 0 0 0 0 1 +pinseq=1 +T 100 450 5 8 0 1 0 0 1 +pinlabel=1 +T 100 450 5 8 0 1 0 0 1 +pintype=pas +} +P 500 400 800 400 1 0 1 +{ +T 650 450 5 8 1 1 0 0 1 +pinnumber=2 +T 650 450 5 8 0 0 0 0 1 +pinseq=2 +T 650 450 5 8 0 1 0 0 1 +pinlabel=2 +T 650 450 5 8 0 1 0 0 1 +pintype=pas +} +L 300 600 500 400 3 0 0 0 -1 -1 diff --git a/symbols/common/switch-no-push.sym b/symbols/common/switch-no-push.sym new file mode 100644 index 0000000..7054d9b --- /dev/null +++ b/symbols/common/switch-no-push.sym @@ -0,0 +1,38 @@ +v 20031231 1 +T 400 300 8 10 1 1 0 0 1 +refdes=S? +P 0 0 150 0 1 0 0 +{ +T 50 50 5 8 1 1 0 0 1 +pinnumber=1 +T 50 50 5 8 0 0 0 0 1 +pinseq=1 +T 50 50 5 8 0 1 0 0 1 +pinlabel=1 +T 50 50 5 8 0 1 0 0 1 +pintype=pas +} +P 850 0 1000 0 1 0 1 +{ +T 900 50 5 8 1 1 0 0 1 +pinnumber=2 +T 900 50 5 8 0 0 0 0 1 +pinseq=2 +T 900 50 5 8 0 1 0 0 1 +pinlabel=2 +T 900 50 5 8 0 1 0 0 1 +pintype=pas +} +L 150 0 325 0 3 0 0 0 -1 -1 +L 850 0 675 0 3 0 0 0 -1 -1 +L 300 85 700 85 3 0 0 0 -1 -1 +V 339 0 14 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +V 662 0 14 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 470 255 520 255 3 0 0 0 -1 -1 +L 470 205 520 205 3 0 0 0 -1 -1 +L 470 205 495 155 3 0 0 0 -1 -1 +L 520 205 495 155 3 0 0 0 -1 -1 +L 495 205 495 255 3 0 0 0 -1 -1 +L 495 155 495 86 3 0 0 0 -1 -1 +T 400 600 8 10 0 0 0 0 1 +device=SWITCH_PUSHBUTTON_NO diff --git a/symbols/newhaven/NHD-C0216.sym b/symbols/newhaven/NHD-C0216.sym new file mode 100644 index 0000000..eeb0016 --- /dev/null +++ b/symbols/newhaven/NHD-C0216.sym @@ -0,0 +1,211 @@ +v 20110115 2 +T 6700 1300 8 10 1 1 0 6 1 +refdes=X? +T 0 1050 5 10 0 0 0 0 1 +device=HD44780_con +T 0 1250 5 10 0 0 0 0 1 +footprint=none +T 0 1450 5 10 0 0 0 0 1 +numslots=0 +T 0 2650 5 10 0 0 0 0 1 +description=LCD-display connector for HD44780 and compatible display controllers +P 200 0 200 300 1 0 0 +{ +T 150 200 5 8 1 1 90 6 1 +pinnumber=1 +T 250 200 5 8 0 1 90 8 1 +pinseq=1 +T 200 350 9 8 1 1 90 0 1 +pinlabel=XRESET +T 200 350 5 8 0 2 90 2 1 +pintype=in +} +P 600 0 600 300 1 0 0 +{ +T 550 200 5 8 1 1 90 6 1 +pinnumber=2 +T 650 200 5 8 0 1 90 8 1 +pinseq=2 +T 600 350 9 8 1 1 90 0 1 +pinlabel=RS +T 600 350 5 8 0 1 90 2 1 +pintype=io +} +P 1400 0 1400 300 1 0 0 +{ +T 1350 200 5 8 1 1 90 6 1 +pinnumber=4 +T 1450 200 5 8 0 1 90 8 1 +pinseq=4 +T 1400 350 9 8 1 1 90 0 1 +pinlabel=E +T 1400 350 5 8 0 1 90 2 1 +pintype=in +} +P 1000 0 1000 300 1 0 0 +{ +T 950 200 5 8 1 1 90 6 1 +pinnumber=3 +T 1050 200 5 8 0 1 90 8 1 +pinseq=3 +T 1000 350 9 8 1 1 90 0 1 +pinlabel=R/\_W\_ +T 1000 350 5 8 0 1 90 2 1 +pintype=in +} +P 2200 0 2200 300 1 0 0 +{ +T 2150 200 5 8 1 1 90 6 1 +pinnumber=6 +T 2250 200 5 8 0 1 90 8 1 +pinseq=6 +T 2200 350 9 8 1 1 90 0 1 +pinlabel=DB1 +T 2200 350 5 8 0 1 90 2 1 +pintype=in +} +P 2600 0 2600 300 1 0 0 +{ +T 2550 200 5 8 1 1 90 6 1 +pinnumber=7 +T 2650 200 5 8 0 1 90 8 1 +pinseq=7 +T 2600 350 9 8 1 1 90 0 1 +pinlabel=DB2 +T 2600 350 5 8 0 1 90 2 1 +pintype=io +} +P 3000 0 3000 300 1 0 0 +{ +T 2950 200 5 8 1 1 90 6 1 +pinnumber=8 +T 3050 200 5 8 0 1 90 8 1 +pinseq=8 +T 3000 350 9 8 1 1 90 0 1 +pinlabel=DB3 +T 3000 350 5 8 0 1 90 2 1 +pintype=io +} +P 3400 0 3400 300 1 0 0 +{ +T 3350 200 5 8 1 1 90 6 1 +pinnumber=9 +T 3450 200 5 8 0 1 90 8 1 +pinseq=9 +T 3400 350 9 8 1 1 90 0 1 +pinlabel=DB4 +T 3400 350 5 8 0 1 90 2 1 +pintype=io +} +P 3800 0 3800 300 1 0 0 +{ +T 3750 200 5 8 1 1 90 6 1 +pinnumber=10 +T 3850 200 5 8 0 1 90 8 1 +pinseq=10 +T 3800 350 9 8 1 1 90 0 1 +pinlabel=DB5 +T 3800 350 5 8 0 1 90 2 1 +pintype=io +} +P 4200 0 4200 300 1 0 0 +{ +T 4150 200 5 8 1 1 90 6 1 +pinnumber=11 +T 4250 200 5 8 0 1 90 8 1 +pinseq=11 +T 4200 350 9 8 1 1 90 0 1 +pinlabel=DB6 +T 4200 350 5 8 0 1 90 2 1 +pintype=io +} +P 4600 0 4600 300 1 0 0 +{ +T 4550 200 5 8 1 1 90 6 1 +pinnumber=12 +T 4650 200 5 8 0 1 90 8 1 +pinseq=12 +T 4600 350 9 8 1 1 90 0 1 +pinlabel=DB7 +T 4600 350 5 8 0 1 90 2 1 +pintype=io +} +P 5000 0 5000 300 1 0 0 +{ +T 4950 200 5 8 1 1 90 6 1 +pinnumber=13 +T 5050 200 5 8 0 1 90 8 1 +pinseq=13 +T 5000 350 9 8 1 1 90 0 1 +pinlabel=VSS +T 5000 350 5 8 0 1 90 2 1 +pintype=pwr +} +P 5400 0 5400 300 1 0 0 +{ +T 5350 200 5 8 1 1 90 6 1 +pinnumber=14 +T 5450 200 5 8 0 1 90 8 1 +pinseq=14 +T 5400 350 9 8 1 1 90 0 1 +pinlabel=VDD +T 5400 350 5 8 0 1 90 2 1 +pintype=pwr +} +P 5800 0 5800 300 1 0 0 +{ +T 5750 200 5 8 1 1 90 6 1 +pinnumber=15 +T 5850 200 5 8 0 1 90 8 1 +pinseq=15 +T 5800 350 9 8 1 1 90 0 1 +pinlabel=VOUT +T 5800 350 5 8 0 1 90 2 1 +pintype=pas +} +P 6200 0 6200 300 1 0 0 +{ +T 6150 200 5 8 1 1 90 6 1 +pinnumber=16 +T 6250 200 5 8 0 1 90 8 1 +pinseq=16 +T 6200 350 9 8 1 1 90 0 1 +pinlabel=CAP1P +T 6200 350 5 8 0 1 90 2 1 +pintype=pas +} +B 0 300 6800 900 3 0 0 0 -1 -1 0 0 -1 -1 -1 -1 +T 0 1650 5 10 0 0 0 0 1 +symversion=0.1 +T 0 1850 5 10 0 0 0 0 1 +use-license=unlimited +T 0 2050 5 10 0 0 0 0 1 +dist-license=GPL2 +T 0 2250 5 10 0 0 0 0 1 +author=Werner Hoch +T 0 2450 5 10 0 0 0 0 1 +documentation=http://www.sparkfun.com/datasheets/LCD/HD44780.pdf +T 0 1250 9 10 1 0 0 0 1 +NHD 2x16 LCD Module +P 6600 0 6600 300 1 0 0 +{ +T 6550 200 5 8 1 1 90 6 1 +pinnumber=17 +T 6650 200 5 8 0 1 90 8 1 +pinseq=16 +T 6600 350 9 8 1 1 90 0 1 +pinlabel=CAP1N +T 6600 350 5 8 0 1 90 2 1 +pintype=pas +} +P 1800 0 1800 300 1 0 0 +{ +T 1750 200 5 8 1 1 90 6 1 +pinnumber=5 +T 1850 200 5 8 0 1 90 8 1 +pinseq=5 +T 1800 350 9 8 1 1 90 0 1 +pinlabel=DB0 +T 1800 350 5 8 0 1 90 2 1 +pintype=io +} -- 2.39.5