You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

180 lines
4.5 KiB

use<I2C_interface_LCD1602.scad>;
use<Solder.scad>;
$fn=36;
Pitch=2.54;
PinsDown=1;
Text1="ABCDEFG";
Text2="HIJKLMNOPQ";
module Pins(Pins_number,Pitch)
{
translate([0,-Pitch*Pins_number/2,0])
for(a=[0:1:Pins_number-1])
{
color("Goldenrod")
translate([0,Pitch*a,-3])
cube([0.6,0.6,10],center=true);
color("Silver")
translate([0,Pitch*a,-1.5])
cylinder(r1=0,r2=1,h=1);
color("Silver")
translate([0,Pitch*a,0.5])
cylinder(r1=1,r2=0,h=1);
color("Black")
translate([0,Pitch*a,-2])
Component(2,2,1.25);
}
}
module Pins_holes(Pins_number,Pitch,Diameter)
{
translate([0,-Pitch*Pins_number/2,0])
for(a=[0:1:Pins_number-1])
{
color("Goldenrod")
translate([0,Pitch*a,-3])
cylinder(r=Diameter,h=10,center=true);
}
}
module Pins_copper_rings(Pins_number,Pitch,Diameter)
{
translate([0,-Pitch*Pins_number/2,0])
for(a=[0:1:Pins_number-1])
{
color("Goldenrod")
translate([0,Pitch*a,-3])
cylinder(r=Diameter,h=1.6,center=true);
}
}
module Component(X,Y,Z)
{
hull()
{
translate([X/2,Y/2,0])
sphere(r=0.25,$fn=18);
translate([-X/2,Y/2,0])
sphere(r=0.25,$fn=18);
translate([X/2,-Y/2,0])
sphere(r=0.25,$fn=18);
translate([-X/2,-Y/2,0])
sphere(r=0.25,$fn=18);
translate([X/2,Y/2,Z-0.25])
sphere(r=0.25,$fn=18);
translate([-X/2,Y/2,Z-0.25])
sphere(r=0.25,$fn=18);
translate([X/2,-Y/2,Z-0.25])
sphere(r=0.25,$fn=18);
translate([-X/2,-Y/2,Z-0.25])
sphere(r=0.25,$fn=18);
}
}
//---------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------
module LCD_1602_I2C(PinsDown,Text1,Text2)
translate([-2.54*16,-2.54*7-1.27,0])
{
translate([0,-1.252,0])
difference()
{
union()
{
color("Royalblue")
translate([0,1.5,0])
cube([81,36,1.5]);
translate([Pitch*11,Pitch*14,-2.25])
rotate([0,180,90])
Pins_copper_rings(16,Pitch,1);
color("silver")
translate([2.5,4,-0.05])
rotate([0,0,0])
cylinder(d=3.5,h=1.6);
color("silver")
translate([2.5,35,-0.05])
rotate([0,0,0])
cylinder(d=3.5,h=1.6);
color("silver")
translate([78.5,4,-0.05])
rotate([0,0,0])
cylinder(d=3.5,h=1.6);
color("silver")
translate([78.5,35,-0.05])
rotate([0,0,0])
cylinder(d=3.5,h=1.6);
color("Black")
translate([40.5,19.5,8])
rotate([0,180,0])
Component(71.5,27-3,7);
}
translate([Pitch*11,Pitch*14,0.5])
rotate([0,180,90])
Pins_holes(16,Pitch,0.55);
color("OliveDrab")
translate([40.5,19.5,12.5])
rotate([0,180,0])
Component(64,16,3);
color("Black")
translate([10,20.5,9.5])
rotate([0,0,0])
linear_extrude(1)
text(Text1,size=4.5,font="Linux Libertine Mono O:style=Mono");
color("Black")
translate([10,14.5,9.5])
rotate([0,0,0])
linear_extrude(1)
text(Text2,size=4.5,font="Linux Libertine Mono O:style=Mono");
color("silver")
translate([2.5,4,-1])
rotate([0,0,0])
cylinder(d=2.75,h=10);
color("silver")
translate([2.5,35,-1])
rotate([0,0,0])
cylinder(d=2.75,h=10);
color("silver")
translate([78.5,4,-1])
rotate([0,0,0])
cylinder(d=2.75,h=10);
color("silver")
translate([78.5,35,-1])
rotate([0,0,0])
cylinder(d=2.75,h=10);
}
difference()
{
//I2C_interface_LCD1602(Connection_pins_enabled,Connection_pins_up,I2C_pin_enabled,I2C_pins_up,Led_pins_enabled,Led_pins_up);
translate([2.54*11,2.54*10+1.27,0])
rotate([0,180,-90])
I2C_interface_LCD1602(1,0,1,PinsDown,1,PinsDown,1,3);
translate([0,0,52.5])
cube([100,100,100],center=true);
}
translate([2.54*4,2.54*13.5,0.75])
scale([1,1,1.2])
Solder(16,1);
}
LCD_1602_I2C(PinsDown,Text1,Text2);