1
0
mirror of git://projects.qi-hardware.com/wernermisc.git synced 2025-04-21 12:27:27 +03:00

labsw/: schematics symbols and footprints

This commit is contained in:
Werner Almesberger
2011-08-23 11:49:31 -03:00
parent dd0c4ec3f9
commit 2c5a008983
6 changed files with 257 additions and 0 deletions

16
labsw/modules/Makefile Normal file
View File

@@ -0,0 +1,16 @@
MODULES=dip header relay
.SUFFIXES: .fpd .mod
.PHONY: all clean
all: $(MODULES:%=%.mod)
clean:
rm -f *~*.fpd
spotless: clean
rm -f $(MODULES:%=%.mod)
.fpd.mod:
fped -k $< $@

73
labsw/modules/dip.fpd Normal file
View File

@@ -0,0 +1,73 @@
/* MACHINE-GENERATED ! */
frame pin {
__0: vec @(hole/2, hole/2)
__1: vec @(-hole/2, -hole/2)
hole . __0
__2: vec @(-ratio*hole/2, ratio*hole/2)
__3: vec @(ratio*hole/2, -ratio*hole/2)
rpad "$n" __2 .
}
frame pin_top {
set n = N-i
frame pin @
}
frame pin_bottom {
set n = i+1
frame pin @
}
frame pins {
loop i = 0, side-1
__0: vec @(pitch*(i-(side-1)/2), 0mm)
__1: vec .(0mm, width/2)
frame pin_top .
__2: vec __0(0mm, -width/2)
frame pin_bottom .
}
frame marker {
set r = (side*pitch-x)/2-w
set clear = 0.3mm
__0: vec @(-x/2-r-clear, -y/2+r)
__1: vec .(0mm, r)
circ __0 . w
}
frame outline {
set x = (side-1)*pitch+ratio*hole
set y = width-pitch
set w = 5mil
__0: vec @(x/2, y/2)
__1: vec @(-x/2, -y/2)
rect . __0 w
frame marker @
}
package "DIP-$N-${width}"
unit mm
set N = 2*side
set width = 300mil
set hole = 0.5mm
set ratio = 2.5
set pitch = 100mil
loop side = 2, 20
frame outline @
frame pins @

55
labsw/modules/header.fpd Normal file
View File

@@ -0,0 +1,55 @@
/* MACHINE-GENERATED ! */
frame pin {
set n = col*R+row+1
__0: vec @(hole/2, hole/2)
__1: vec @(hole*ratio/2, -hole*ratio/2)
__2: vec @(-hole/2, -hole/2)
hole . __0
__3: vec @(-hole*ratio/2, hole*ratio/2)
rpad "$n" . __1
}
frame pins {
loop row = 0, R-1
loop col = 0, C-1
__1: vec @(-P*(C-1)/2, -P*(R-1)/2)
__0: vec .(col*P, row*P)
frame pin .
}
frame outline {
set x = C*P
set y = R*P
__0: vec @(x/2, y/2)
__1: vec @(-x/2, -y/2)
rect . __0 width
}
package "HDR-${C}x${R}-$P"
unit mm
table
{ R }
{ 1 }
{ 2 }
table
{ P, hole, ratio }
{ 100mil, 0.8mm, 2 }
{ 200mil, 1mm, 2.5 }
set width = 5mil
loop C = 2, 20
frame pins @
frame outline @
measy outline.__1 >> outline.__0 1mm
measx pin.__2 -> pin.__0 -P/2-1mm
measx pin.__3 -> pin.__1 (R-0.5)*P+1mm

56
labsw/modules/relay.fpd Normal file
View File

@@ -0,0 +1,56 @@
/* MACHINE-GENERATED ! */
frame pin {
__0: vec @(hole/2, hole/2)
__1: vec @(-hole/2, -hole/2)
hole . __0
__2: vec @(ratio*hole/2, -ratio*hole/2)
__3: vec @(-ratio*hole/2, ratio*hole/2)
rpad "$name" . __2
}
frame pins {
table
{ name, dy, dx }
{ "A1", 1, 0 }
{ "A2", -1, 0 }
{ "12A", 1, 6 }
{ "12B", -1, 6 }
{ "11A", 1, 8 }
{ "11B", -1, 8 }
{ "14A", 1, 10 }
{ "14B", -1, 10 }
set x = dx*grid
set y = dy*grid*1.5
__0: vec @(x, y)
frame pin .
}
frame outline {
set x0 = -grid
set x1 = x0+29mm
set y = 2.5*grid
__1: vec @(x0, -y)
__0: vec @(x1, y)
rect __1 . w
}
package "RELAY"
unit mm
set grid = 2.52mm
set hole = 1.3mm
set ratio = 2
set w = 5mil
frame pins @
frame outline @