From: Bdale Garbee Date: Sat, 24 Apr 2021 16:09:37 +0000 (-0600) Subject: more or less complete footprint for LCD chosen for TirePyro X-Git-Tag: telelco-v3.0~239 X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=a31791a02be791e41fb13e38d6ca3216f156a9b1;p=hw%2Faltusmetrum more or less complete footprint for LCD chosen for TirePyro --- diff --git a/packages/NHD-C0216CZ.py b/packages/NHD-C0216CZ.py index 62dfa38..f1be58a 100755 --- a/packages/NHD-C0216CZ.py +++ b/packages/NHD-C0216CZ.py @@ -7,14 +7,24 @@ # dimensions in mm from NHD-C0216CZ-FSW-FBW-3V3.pdf datasheet BodyWidth = 41.4 BodyHeight = 24.3 -BodyHeightOffset = -0.75 # pin row to body edge distance PinDiam = 0.7 PinSpacing = 1.50 +PinOffset = 0.75 Pins = 10 ViewWidth = 34.22 ViewHeight = 8.76 ViewHCtr = 15.8 / 2 + 7.6 - BodyHeight / 2 +# centered rectangle of holes for alignment pins +MntWidth = 40.2 +MntHeight = 23.1 +MntDiam = 1.0 + +# contacts for LED backlight +BLWidth = 34.6 +BLOffset = 2.55 +BLDiam = 1.25 # a 1.2 x 0.6 slot is called for + import sys # we're going to use the 1/100 of a mil fundamental unit form @@ -39,7 +49,7 @@ for pin in range (1,Pins+1): print ' Pin[',\ mm2mils100((pin - 5.5)*PinSpacing), \ - mm2mils100(-BodyHeight/2), \ + mm2mils100(-BodyHeight/2+PinOffset), \ mm2mils100(PinDiam * 1.75), \ 1200, \ mm2mils100(PinDiam * 1.75) + 600, \ @@ -48,30 +58,30 @@ for pin in range (1,Pins+1): print ' ElementLine[',\ -mm2mils100(BodyWidth/2), \ - -mm2mils100(BodyHeight/2-BodyHeightOffset), \ + -mm2mils100(BodyHeight/2), \ mm2mils100(BodyWidth/2), \ - -mm2mils100(BodyHeight/2-BodyHeightOffset), \ + -mm2mils100(BodyHeight/2), \ 500, \ ']' print ' ElementLine[',\ -mm2mils100(BodyWidth/2), \ - -mm2mils100(BodyHeight/2-BodyHeightOffset), \ + -mm2mils100(BodyHeight/2), \ -mm2mils100(BodyWidth/2), \ - mm2mils100(BodyHeight/2-BodyHeightOffset), \ + mm2mils100(BodyHeight/2), \ 500, \ ']' print ' ElementLine[',\ -mm2mils100(BodyWidth/2), \ - mm2mils100(BodyHeight/2-BodyHeightOffset), \ + mm2mils100(BodyHeight/2), \ mm2mils100(BodyWidth/2), \ - mm2mils100(BodyHeight/2-BodyHeightOffset), \ + mm2mils100(BodyHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(BodyWidth/2), \ - mm2mils100(BodyHeight/2-BodyHeightOffset), \ + mm2mils100(BodyHeight/2), \ mm2mils100(BodyWidth/2), \ - -mm2mils100(BodyHeight/2-BodyHeightOffset), \ + -mm2mils100(BodyHeight/2), \ 500, \ ']' @@ -79,50 +89,106 @@ print ' ElementLine[',\ print ' ElementLine[',\ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ 500, \ ']' print ' ElementLine[',\ mm2mils100(-ViewWidth/2), \ - mm2mils100(ViewHCtr - ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr - ViewHeight/2), \ mm2mils100(ViewWidth/2), \ - mm2mils100(ViewHCtr + ViewHeight/2-BodyHeightOffset), \ + mm2mils100(ViewHCtr + ViewHeight/2), \ 500, \ ']' +# holes for alignment pins +print ' Pin[',\ + mm2mils100(MntWidth/2), \ + mm2mils100(MntHeight/2), \ + mm2mils100(MntDiam * 1.75), \ + 1200, \ + mm2mils100(MntDiam * 1.75) + 600, \ + mm2mils100(MntDiam), \ + '"G"', '"G"', '0x0001', ']' + +print ' Pin[',\ + mm2mils100(MntWidth/2), \ + mm2mils100(-MntHeight/2), \ + mm2mils100(MntDiam * 1.75), \ + 1200, \ + mm2mils100(MntDiam * 1.75) + 600, \ + mm2mils100(MntDiam), \ + '"G"', '"G"', '0x0001', ']' + +print ' Pin[',\ + mm2mils100(-MntWidth/2), \ + mm2mils100(MntHeight/2), \ + mm2mils100(MntDiam * 1.75), \ + 1200, \ + mm2mils100(MntDiam * 1.75) + 600, \ + mm2mils100(MntDiam), \ + '"G"', '"G"', '0x0001', ']' + +print ' Pin[',\ + mm2mils100(-MntWidth/2), \ + mm2mils100(-MntHeight/2), \ + mm2mils100(MntDiam * 1.75), \ + 1200, \ + mm2mils100(MntDiam * 1.75) + 600, \ + mm2mils100(MntDiam), \ + '"G"', '"G"', '0x0001', ']' + +# backlight pins +print ' Pin[',\ + mm2mils100(-BLWidth/2), \ + mm2mils100(-BodyHeight/2+BLOffset), \ + mm2mils100(BLDiam * 1.75), \ + 1200, \ + mm2mils100(BLDiam * 1.75) + 600, \ + mm2mils100(BLDiam), \ + '"K"', '"K"', '0x0001', ']' + +print ' Pin[',\ + mm2mils100(BLWidth/2), \ + mm2mils100(-BodyHeight/2+BLOffset), \ + mm2mils100(BLDiam * 1.75), \ + 1200, \ + mm2mils100(BLDiam * 1.75) + 600, \ + mm2mils100(BLDiam), \ + '"A"', '"A"', '0x0001', ']' + print ")"