From 8827771fbf816e7a834f689adb193d6f9722c5ce Mon Sep 17 00:00:00 2001 From: Werner Almesberger Date: Tue, 31 Aug 2010 21:43:22 -0300 Subject: [PATCH] Inaugural commit: uSD card as a footprint, inspired by Rikard Lindstrom's work. --- modules/Makefile | 15 ++++++++ modules/usd-card.fpd | 88 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 modules/Makefile create mode 100644 modules/usd-card.fpd diff --git a/modules/Makefile b/modules/Makefile new file mode 100644 index 0000000..70cc56d --- /dev/null +++ b/modules/Makefile @@ -0,0 +1,15 @@ +MODULES=usd-card + +.SUFFIXES: .fpd .mod +.PHONY: all clean + +all: $(MODULES:%=%.mod) + +clean: + rm -f *~*.fpd + +spotless: clean + rm -f $(MODULES:%=%.mod) + +.fpd.mod: + fped -k $< $@ diff --git a/modules/usd-card.fpd b/modules/usd-card.fpd new file mode 100644 index 0000000..c642c0e --- /dev/null +++ b/modules/usd-card.fpd @@ -0,0 +1,88 @@ +/* MACHINE-GENERATED ! */ + +frame push { + set depth = 1.3mm + + __0: vec @(-depth, 0mm) + __1: vec .(0mm, W) + line __0 . w +} + +frame pads { + table + { e, x1, x2, y } + { 1.1mm, 3mm, 3.3mm, 0.9mm } + + table + { n, x } + { 1, x1 } + { 2, x1 } + { 3, x1 } + { 4, x2 } + { 5, x1 } + { 6, x2 } + { 7, x1 } + { 8, x1 } + + __0: vec @(0mm, -(n-1)*e) + __1: vec .(x, 0mm) + __2: vec .(0mm, -y) + pad "$n" __0 . +} + +frame outline { + set w = 3mil + + __0: vec @(0mm, W) + line @ . w + __1: vec __0(D1, 0mm) + line __0 . w + __2: vec .(D2, -D2) + line __1 . w + __3: vec .(D3, 0mm) + line __2 . w + __4: vec .(0mm, D2) + line __3 . w + __5: vec .(D4, 0mm) + line __4 . w + __6: vec .(D5, -D5) + line __5 . w + __7: vec @(L, 0mm) + line @ . w + __8: vec __7(0mm, W-D5) + line __6 . w + line __7 . w + frame push @ +} + +package "uSD-Card" +unit mm + +table + { W, L } + { 11mm, 15mm } + +table + { D1, D2, D3, D4, D5 } + { 5.1mm, 0.8mm, 1.2mm, 1.4mm, 1.4mm } + +__0: vec @(0mm, -W/2) +frame outline . +__1: vec .(11mm, W-D5-0.5mm) +frame pads . +measy push.__0 >> push.__1 1mm +measx outline.__0 >> outline.__1 1mm +measx outline.__1 >> outline.__2 1mm +measx outline.__2 >> outline.__3 D2+1mm +measx outline.__4 >> outline.__5 1mm +measx outline.__5 >> outline.__6 1mm +measx outline.__6 >> outline.__8 D5+1mm +measx push.__0 >> __0 -1mm +measy outline.__8 << pads.__1 -2mm +measy pads.__2 -> pads.__1 -2mm +measy outline.__7 -> pads.__2 -1mm +measy pads.__0 -> pads.__0 1mm +measx pads.__0 -> pads.__2 -2.3mm +measx __1 >> pads.__1 1mm +measx __0 >> __1 5.5mm +measy pads.__2 >> pads.__1 -3mm