From df432a446df8748fac61a9f8e968c9ca7f33ccd1 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Wed, 11 May 2022 20:59:16 -0700 Subject: Don't mysteriously drop nets; allow arbitrary pair construction. --- test.rb | 47 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) (limited to 'test.rb') diff --git a/test.rb b/test.rb index 86d1415..9bb54a1 100755 --- a/test.rb +++ b/test.rb @@ -2,24 +2,53 @@ require "./lace" -def r(size, suffix="ohm") - comp("R", "0805", "resistor", "#{Lace::e12(size)}#{suffix}") +def r(size) + comp("R", "0805", "resistor", size) end -def c(size, suffix="nF") - comp("C", "0805", "capacitor", "#{Lace::e12(size)}#{suffix}") +def c(size) + comp("C", "0805", "capacitor", size) end def led(color="red") - comp("D", "0805", "LED", "1.5V 10mA #{color}") + comp("D", "0805", "LED", "1.5V 10mA #{color}") - r("220ohm") +end + +def inverter() + $inverters ||= [] + if $inverters.empty? + u = comp("U", "TSOP-14", "74HCT04", "hex inverter") + $vcc - u[14] - c("100nF") - u[7] - $gnd + $inverters += [ + pair(u[1], u[2]), + pair(u[3], u[4]), + pair(u[5], u[6]), + pair(u[9], u[8]), + pair(u[11], u[10]), + pair(u[13], u[12]), + ] + end + $inverters.shift +end + +def btn(color="black") + sw = comp("SW", "BTN", "SPST button", color) + sw[1] - sw[4] + sw[2] - sw[3] + pair(sw[1], sw[4]) end nl = Lace::Netlist.new do - vcc = net("vcc") - gnd = net("gnd") + $vcc = net("vcc") + $gnd = net("gnd") + + $vcc - led - $gnd + + $vcc - btn - led("green") - $gnd - vcc - r((5 - 1.5)/0.010) - led - gnd - vcc - c(100) - gnd + x = $vcc - btn("white") + x - led("amber") - $gnd + x - inverter() - led("blue") - $gnd end nl.kicad -- cgit v1.2.3