From: adam Date: Wed, 20 Sep 2006 07:31:57 +0000 (+0100) Subject: checkpoint X-Git-Tag: mpar_demo_release~83 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=2346f356adb1d38929c3f784bc828a5e499014ae;p=slipway.git checkpoint --- diff --git a/src/edu/berkeley/obits/device/atmel/ChipImpl.java b/src/edu/berkeley/obits/device/atmel/ChipImpl.java index 754b5c8..570a7d6 100644 --- a/src/edu/berkeley/obits/device/atmel/ChipImpl.java +++ b/src/edu/berkeley/obits/device/atmel/ChipImpl.java @@ -20,17 +20,16 @@ public class ChipImpl extends FtdiChip implements Chip { } public void doReset() { - /* -dmask = - (1<<0) | - (1<<1) | - (1<<2) | - //(1<<3) | - //(1<<4) | - (1<<5) | - (1<<6) | - (1<<7); - */ + + dmask = + (1<<0) | + (1<<1) | + (1<<2) | + //(1<<3) | + //(1<<4) | + (1<<5) | + (1<<6) | + (1<<7); flush(); //purge(); @@ -51,10 +50,6 @@ dmask = reset(true); flush(); try { Thread.sleep(500); } catch (Exception e) { } - - purge(); - dbangmode(dmask); - flush(); } int porte = 0; @@ -77,10 +72,17 @@ dmask = } } + // tricky: RESET has a weak pull-up, and is wired to a CBUS line. So, + // we can pull it down (assert reset) from uart-mode, or we can + // let it float upward from either mode. public void reset(boolean on) { bits = on ? (1<<1) : 0; + mask = on ? (1<<0) : ((1<<0) | (1<<1)); uart(); + flush(); + if (on) dbangmode(dmask); } + public void avrrst(boolean on) { dbang(7, on); } public void clk(boolean on) { dbang(6, on); } public void data(boolean on) { dbang(5, on); }