From af77464f165fa86e512ca9ef05625329db8055a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?King=20K=C3=A9vin?= Date: Tue, 12 Apr 2022 15:23:13 +0200 Subject: [PATCH] lib: add LM339 quad-comparator --- coraleda/subc/SOP65P640X120-14N.lht | 503 ++++++++++++++++++++++++ geda/symbols/LM339PW.sym | 1 + geda/symbols/LM339PW_part-1-4-COMP1.sym | 69 ++++ geda/symbols/LM339PW_part-2-4-COMP2.sym | 69 ++++ geda/symbols/LM339PW_part-3-4-COMP3.sym | 69 ++++ geda/symbols/LM339PW_part-4-4-COMP4.sym | 69 ++++ 6 files changed, 780 insertions(+) create mode 100644 coraleda/subc/SOP65P640X120-14N.lht create mode 100644 geda/symbols/LM339PW.sym create mode 100644 geda/symbols/LM339PW_part-1-4-COMP1.sym create mode 100644 geda/symbols/LM339PW_part-2-4-COMP2.sym create mode 100644 geda/symbols/LM339PW_part-3-4-COMP3.sym create mode 100644 geda/symbols/LM339PW_part-4-4-COMP4.sym diff --git a/coraleda/subc/SOP65P640X120-14N.lht b/coraleda/subc/SOP65P640X120-14N.lht new file mode 100644 index 0000000..d51d5f5 --- /dev/null +++ b/coraleda/subc/SOP65P640X120-14N.lht @@ -0,0 +1,503 @@ +# subcircuit generated using QEDA +li:pcb-rnd-subcircuit-v6 { + ha:subc.1 { + uid = SOP65P640X120-14N....... + ha:attributes { + footprint = SOP65P640X120-14N + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.2 { + htop = 0 + hbottom = 0 + hdia = 0 + hplated = 0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.200mm + li:ps_poly { + -0.762mm + -0.225mm + 0.762mm + -0.225mm + 0.762mm + 0.225mm + -0.762mm + 0.225mm + } + ha:layer_mask { + top = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0 + li:ps_poly { + -0.813mm + -0.275mm + 0.813mm + -0.275mm + 0.813mm + 0.275mm + -0.813mm + 0.275mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0 + li:ps_poly { + -0.762mm + -0.225mm + 0.762mm + -0.225mm + 0.762mm + 0.225mm + -0.762mm + 0.225mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + } + } + li:objects { + ha:padstack_ref.30 { + proto = 2 + rot = 0 + x = -2.950mm + y = -1.950mm + ha:attributes { + term = 1 + name = 1 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.31 { + proto = 2 + rot = 0 + x = -2.950mm + y = -1.300mm + ha:attributes { + term = 2 + name = 2 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.32 { + proto = 2 + rot = 0 + x = -2.950mm + y = -0.650mm + ha:attributes { + term = 3 + name = 3 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.33 { + proto = 2 + rot = 0 + x = -2.950mm + y = 0.000mm + ha:attributes { + term = 4 + name = 4 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.34 { + proto = 2 + rot = 0 + x = -2.950mm + y = 0.650mm + ha:attributes { + term = 5 + name = 5 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.35 { + proto = 2 + rot = 0 + x = -2.950mm + y = 1.300mm + ha:attributes { + term = 6 + name = 6 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.36 { + proto = 2 + rot = 0 + x = -2.950mm + y = 1.950mm + ha:attributes { + term = 7 + name = 7 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.37 { + proto = 2 + rot = 0 + x = 2.950mm + y = -1.950mm + ha:attributes { + term = 14 + name = 14 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.38 { + proto = 2 + rot = 0 + x = 2.950mm + y = -1.300mm + ha:attributes { + term = 13 + name = 13 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.39 { + proto = 2 + rot = 0 + x = 2.950mm + y = -0.650mm + ha:attributes { + term = 12 + name = 12 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.40 { + proto = 2 + rot = 0 + x = 2.950mm + y = 0.000mm + ha:attributes { + term = 11 + name = 11 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.41 { + proto = 2 + rot = 0 + x = 2.950mm + y = 0.650mm + ha:attributes { + term = 10 + name = 10 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.42 { + proto = 2 + rot = 0 + x = 2.950mm + y = 1.300mm + ha:attributes { + term = 9 + name = 9 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + ha:padstack_ref.43 { + proto = 2 + rot = 0 + x = 2.950mm + y = 1.950mm + ha:attributes { + term = 8 + name = 8 + } + clearance = 0.200mm + ha:flags { + clearline = 1 + } + } + } + li:layers { + ha:subc-aux { + lid = 0 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.44 { + clearance = 0 + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.000mm + x2 = 0.000mm + y1 = 0.000mm + y2 = 0.000mm + } + ha:line.45 { + clearance = 0 + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.000mm + x2 = 1.000mm + y1 = 0.000mm + y2 = 0.000mm + } + ha:line.46 { + clearance = 0 + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.000mm + x2 = 0.000mm + y1 = 0.000mm + y2 = 1.000mm + } + ha:line.47 { + clearance = 0 + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.000mm + x2 = 0.000mm + y1 = 0.000mm + y2 = 0.000mm + } + } + } + ha:top-silkscreen { + lid = 1 + ha:type { + top = 1 + silk = 1 + } + li:objects { + ha:text.48 { + x = 0.000mm + y = 0.000mm + rot = 0 + scale = 100 + string = %a.parent.refdes% + fid = 0 + ha:flags { + floater = 1 + dyntext = 1 + } + } + ha:line.49 { + x1 = -2.300mm + y1 = -2.600mm + x2 = 2.300mm + y2 = -2.600mm + thickness = 0.200mm + clearance = 0 + } + ha:line.50 { + x1 = 2.300mm + y1 = 2.600mm + x2 = -2.300mm + y2 = 2.600mm + thickness = 0.200mm + clearance = 0 + } + ha:line.51 { + x1 = -2.300mm + y1 = -2.475mm + x2 = -4.013mm + y2 = -2.475mm + thickness = 0.200mm + clearance = 0 + } + ha:line.52 { + x1 = -4.013mm + y1 = -2.475mm + x2 = -4.013mm + y2 = -1.725mm + thickness = 0.200mm + clearance = 0 + } + } + } + ha:top-assembly { + lid = 2 + ha:type { + top = 1 + doc = 1 + } + purpose = assy + li:objects { + ha:arc.53 { + x = 0.000mm + y = 0.000mm + width = 0.500mm + height = 0.500mm + thickness = 0.100mm + astart = 0 + adelta = 360 + clearance = 0 + } + ha:line.54 { + x1 = -0.700mm + y1 = 0.000mm + x2 = 0.700mm + y2 = 0.000mm + thickness = 0.100mm + clearance = 0 + } + ha:line.55 { + x1 = 0.000mm + y1 = -0.700mm + x2 = 0.000mm + y2 = 0.700mm + thickness = 0.100mm + clearance = 0 + } + ha:text.56 { + x = 0.000mm + y = 0.000mm + rot = 90 + scale = 100 + string = SOP65P640X120-14N + fid = 0 + ha:flags { + floater = 1 + } + } + ha:line.57 { + x1 = -1.200mm + y1 = -2.500mm + x2 = 2.200mm + y2 = -2.500mm + thickness = 0.100mm + clearance = 0 + } + ha:line.58 { + x1 = 2.200mm + y1 = -2.500mm + x2 = 2.200mm + y2 = 2.500mm + thickness = 0.100mm + clearance = 0 + } + ha:line.59 { + x1 = 2.200mm + y1 = 2.500mm + x2 = -2.200mm + y2 = 2.500mm + thickness = 0.100mm + clearance = 0 + } + ha:line.60 { + x1 = -2.200mm + y1 = 2.500mm + x2 = -2.200mm + y2 = -1.500mm + thickness = 0.100mm + clearance = 0 + } + ha:line.61 { + x1 = -2.200mm + y1 = -1.500mm + x2 = -1.200mm + y2 = -2.500mm + thickness = 0.100mm + clearance = 0 + } + } + } + ha:top-courtyard { + lid = 3 + ha:type { + top = 1 + doc = 1 + } + purpose = ko.courtyard + li:objects { + ha:polygon.62 { + li:geometry { + ta:contour { + { -3.962mm; -2.425mm } + { -2.450mm; -2.425mm } + { -2.450mm; -2.750mm } + { 2.450mm; -2.750mm } + { 2.450mm; -2.425mm } + { 3.962mm; -2.425mm } + { 3.962mm; 2.425mm } + { 2.450mm; 2.425mm } + { 2.450mm; 2.750mm } + { -2.450mm; 2.750mm } + { -2.450mm; 2.425mm } + { -3.962mm; 2.425mm } + } + } + } + } + } + } + } + } +} diff --git a/geda/symbols/LM339PW.sym b/geda/symbols/LM339PW.sym new file mode 100644 index 0000000..fd759a2 --- /dev/null +++ b/geda/symbols/LM339PW.sym @@ -0,0 +1 @@ +v 20150930 2 diff --git a/geda/symbols/LM339PW_part-1-4-COMP1.sym b/geda/symbols/LM339PW_part-1-4-COMP1.sym new file mode 100644 index 0000000..e1b1e00 --- /dev/null +++ b/geda/symbols/LM339PW_part-1-4-COMP1.sym @@ -0,0 +1,69 @@ +v 20150930 2 +T 0 0 5 8 0 0 0 0 1 +description=comparator, quad +T 0 0 5 8 0 0 0 0 1 +datasheet=https://www.ti.com/lit/gpn/LM339 +T 0 0 5 8 0 0 0 0 1 +aliases=LM139PW LM239PW +T 0 0 5 8 0 0 0 0 1 +footprint=SOP65P640X120-14N.fp +B 400 1400 1400 -1000 3 0 1 0 -1 -1 0 -1 -1 -1 -1 -1 +P 0 1000 400 1000 1 0 0 +{ +T 480 1000 9 8 1 1 0 0 1 +pinlabel=IN1+ +T 480 1000 5 8 0 0 0 2 1 +pintype=in +T 320 1000 5 8 1 1 0 6 1 +pinnumber=7 +T 320 1000 5 8 0 0 0 8 1 +pinseq=7 +} +P 0 800 400 800 1 0 0 +{ +T 480 800 9 8 1 1 0 0 1 +pinlabel=IN1- +T 480 800 5 8 0 0 0 2 1 +pintype=in +T 320 800 5 8 1 1 0 6 1 +pinnumber=6 +T 320 800 5 8 0 0 0 8 1 +pinseq=6 +} +P 2200 900 1800 900 1 0 0 +{ +T 1720 900 9 8 1 1 0 6 1 +pinlabel=OUT1 +T 1720 900 5 8 0 0 0 8 1 +pintype=out +T 1880 900 5 8 1 1 0 0 1 +pinnumber=1 +T 1880 900 5 8 0 0 0 2 1 +pinseq=1 +} +P 1100 1800 1100 1400 1 0 0 +{ +T 1100 1320 9 8 1 1 90 6 1 +pinlabel=VCC +T 1100 1320 5 8 0 0 90 8 1 +pintype=pwr +T 1100 1480 5 8 1 1 90 0 1 +pinnumber=3 +T 1100 1480 5 8 0 0 90 2 1 +pinseq=3 +} +P 1100 0 1100 400 1 0 0 +{ +T 1100 480 9 8 1 1 90 0 1 +pinlabel=GND +T 1100 480 5 8 0 0 90 2 1 +pintype=pwr +T 1100 320 5 8 1 1 90 6 1 +pinnumber=12 +T 1100 320 5 8 0 0 90 8 1 +pinseq=12 +} +T 400 1620 5 10 1 1 0 0 1 +refdes=U? +T 400 1460 9 10 1 1 0 0 1 +device=LM339PW diff --git a/geda/symbols/LM339PW_part-2-4-COMP2.sym b/geda/symbols/LM339PW_part-2-4-COMP2.sym new file mode 100644 index 0000000..3dec598 --- /dev/null +++ b/geda/symbols/LM339PW_part-2-4-COMP2.sym @@ -0,0 +1,69 @@ +v 20150930 2 +T 0 0 5 8 0 0 0 0 1 +description=comparator, quad +T 0 0 5 8 0 0 0 0 1 +datasheet=https://www.ti.com/lit/gpn/LM339 +T 0 0 5 8 0 0 0 0 1 +aliases=LM139PW LM239PW +T 0 0 5 8 0 0 0 0 1 +footprint=SOP65P640X120-14N.fp +B 400 1400 1400 -1000 3 0 1 0 -1 -1 0 -1 -1 -1 -1 -1 +P 0 1000 400 1000 1 0 0 +{ +T 480 1000 9 8 1 1 0 0 1 +pinlabel=IN2+ +T 480 1000 5 8 0 0 0 2 1 +pintype=in +T 320 1000 5 8 1 1 0 6 1 +pinnumber=5 +T 320 1000 5 8 0 0 0 8 1 +pinseq=5 +} +P 0 800 400 800 1 0 0 +{ +T 480 800 9 8 1 1 0 0 1 +pinlabel=IN2- +T 480 800 5 8 0 0 0 2 1 +pintype=in +T 320 800 5 8 1 1 0 6 1 +pinnumber=4 +T 320 800 5 8 0 0 0 8 1 +pinseq=4 +} +P 2200 900 1800 900 1 0 0 +{ +T 1720 900 9 8 1 1 0 6 1 +pinlabel=OUT2 +T 1720 900 5 8 0 0 0 8 1 +pintype=out +T 1880 900 5 8 1 1 0 0 1 +pinnumber=2 +T 1880 900 5 8 0 0 0 2 1 +pinseq=2 +} +P 1100 1800 1100 1400 1 0 0 +{ +T 1100 1320 9 8 1 1 90 6 1 +pinlabel=VCC +T 1100 1320 5 8 0 0 90 8 1 +pintype=pwr +T 1100 1480 5 8 1 1 90 0 1 +pinnumber=3 +T 1100 1480 5 8 0 0 90 2 1 +pinseq=3 +} +P 1100 0 1100 400 1 0 0 +{ +T 1100 480 9 8 1 1 90 0 1 +pinlabel=GND +T 1100 480 5 8 0 0 90 2 1 +pintype=pwr +T 1100 320 5 8 1 1 90 6 1 +pinnumber=12 +T 1100 320 5 8 0 0 90 8 1 +pinseq=12 +} +T 400 1620 5 10 1 1 0 0 1 +refdes=U? +T 400 1460 9 10 1 1 0 0 1 +device=LM339PW diff --git a/geda/symbols/LM339PW_part-3-4-COMP3.sym b/geda/symbols/LM339PW_part-3-4-COMP3.sym new file mode 100644 index 0000000..8eea8ef --- /dev/null +++ b/geda/symbols/LM339PW_part-3-4-COMP3.sym @@ -0,0 +1,69 @@ +v 20150930 2 +T 0 0 5 8 0 0 0 0 1 +description=comparator, quad +T 0 0 5 8 0 0 0 0 1 +datasheet=https://www.ti.com/lit/gpn/LM339 +T 0 0 5 8 0 0 0 0 1 +aliases=LM139PW LM239PW +T 0 0 5 8 0 0 0 0 1 +footprint=SOP65P640X120-14N.fp +B 400 1400 1400 -1000 3 0 1 0 -1 -1 0 -1 -1 -1 -1 -1 +P 0 1000 400 1000 1 0 0 +{ +T 480 1000 9 8 1 1 0 0 1 +pinlabel=IN3+ +T 480 1000 5 8 0 0 0 2 1 +pintype=in +T 320 1000 5 8 1 1 0 6 1 +pinnumber=9 +T 320 1000 5 8 0 0 0 8 1 +pinseq=9 +} +P 0 800 400 800 1 0 0 +{ +T 480 800 9 8 1 1 0 0 1 +pinlabel=IN3- +T 480 800 5 8 0 0 0 2 1 +pintype=in +T 320 800 5 8 1 1 0 6 1 +pinnumber=8 +T 320 800 5 8 0 0 0 8 1 +pinseq=8 +} +P 2200 900 1800 900 1 0 0 +{ +T 1720 900 9 8 1 1 0 6 1 +pinlabel=OUT3 +T 1720 900 5 8 0 0 0 8 1 +pintype=out +T 1880 900 5 8 1 1 0 0 1 +pinnumber=14 +T 1880 900 5 8 0 0 0 2 1 +pinseq=14 +} +P 1100 1800 1100 1400 1 0 0 +{ +T 1100 1320 9 8 1 1 90 6 1 +pinlabel=VCC +T 1100 1320 5 8 0 0 90 8 1 +pintype=pwr +T 1100 1480 5 8 1 1 90 0 1 +pinnumber=3 +T 1100 1480 5 8 0 0 90 2 1 +pinseq=3 +} +P 1100 0 1100 400 1 0 0 +{ +T 1100 480 9 8 1 1 90 0 1 +pinlabel=GND +T 1100 480 5 8 0 0 90 2 1 +pintype=pwr +T 1100 320 5 8 1 1 90 6 1 +pinnumber=12 +T 1100 320 5 8 0 0 90 8 1 +pinseq=12 +} +T 400 1620 5 10 1 1 0 0 1 +refdes=U? +T 400 1460 9 10 1 1 0 0 1 +device=LM339PW diff --git a/geda/symbols/LM339PW_part-4-4-COMP4.sym b/geda/symbols/LM339PW_part-4-4-COMP4.sym new file mode 100644 index 0000000..a22bcb8 --- /dev/null +++ b/geda/symbols/LM339PW_part-4-4-COMP4.sym @@ -0,0 +1,69 @@ +v 20150930 2 +T 0 0 5 8 0 0 0 0 1 +description=comparator, quad +T 0 0 5 8 0 0 0 0 1 +datasheet=https://www.ti.com/lit/gpn/LM339 +T 0 0 5 8 0 0 0 0 1 +aliases=LM139PW LM239PW +T 0 0 5 8 0 0 0 0 1 +footprint=SOP65P640X120-14N.fp +B 400 1400 1400 -1000 3 0 1 0 -1 -1 0 -1 -1 -1 -1 -1 +P 0 1000 400 1000 1 0 0 +{ +T 480 1000 9 8 1 1 0 0 1 +pinlabel=IN4+ +T 480 1000 5 8 0 0 0 2 1 +pintype=in +T 320 1000 5 8 1 1 0 6 1 +pinnumber=11 +T 320 1000 5 8 0 0 0 8 1 +pinseq=11 +} +P 0 800 400 800 1 0 0 +{ +T 480 800 9 8 1 1 0 0 1 +pinlabel=IN4- +T 480 800 5 8 0 0 0 2 1 +pintype=in +T 320 800 5 8 1 1 0 6 1 +pinnumber=10 +T 320 800 5 8 0 0 0 8 1 +pinseq=10 +} +P 2200 900 1800 900 1 0 0 +{ +T 1720 900 9 8 1 1 0 6 1 +pinlabel=OUT4 +T 1720 900 5 8 0 0 0 8 1 +pintype=out +T 1880 900 5 8 1 1 0 0 1 +pinnumber=13 +T 1880 900 5 8 0 0 0 2 1 +pinseq=13 +} +P 1100 1800 1100 1400 1 0 0 +{ +T 1100 1320 9 8 1 1 90 6 1 +pinlabel=VCC +T 1100 1320 5 8 0 0 90 8 1 +pintype=pwr +T 1100 1480 5 8 1 1 90 0 1 +pinnumber=3 +T 1100 1480 5 8 0 0 90 2 1 +pinseq=3 +} +P 1100 0 1100 400 1 0 0 +{ +T 1100 480 9 8 1 1 90 0 1 +pinlabel=GND +T 1100 480 5 8 0 0 90 2 1 +pintype=pwr +T 1100 320 5 8 1 1 90 6 1 +pinnumber=12 +T 1100 320 5 8 0 0 90 8 1 +pinseq=12 +} +T 400 1620 5 10 1 1 0 0 1 +refdes=U? +T 400 1460 9 10 1 1 0 0 1 +device=LM339PW