projects
/
slipway.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e33257a
)
checkpoint
author
adam
<adam@megacz.com>
Wed, 20 Sep 2006 08:26:55 +0000
(09:26 +0100)
committer
adam
<adam@megacz.com>
Wed, 20 Sep 2006 08:26:55 +0000
(09:26 +0100)
src/com/ftdi/usb/FtdiUart.java
[moved from
src/edu/berkeley/obits/device/atmel/FtdiChip.java
with 94% similarity]
patch
|
blob
|
history
src/edu/berkeley/obits/device/atmel/Chip.java
patch
|
blob
|
history
src/edu/berkeley/obits/device/atmel/ChipImpl.java
patch
|
blob
|
history
src/edu/berkeley/obits/device/atmel/FtdiBoard.java
patch
|
blob
|
history
diff --git
a/src/edu/berkeley/obits/device/atmel/FtdiChip.java
b/src/com/ftdi/usb/FtdiUart.java
similarity index 94%
rename from
src/edu/berkeley/obits/device/atmel/FtdiChip.java
rename to
src/com/ftdi/usb/FtdiUart.java
index
aeea77e
..
14a2a3a
100644
(file)
--- a/
src/edu/berkeley/obits/device/atmel/FtdiChip.java
+++ b/
src/com/ftdi/usb/FtdiUart.java
@@
-1,8
+1,7
@@
-package edu.berkeley.obits.device.atmel;
-import com.ftdi.usb.*;
+package com.ftdi.usb;
import java.io.*;
import java.io.*;
-public class FtdiChip {
+public class FtdiUart {
protected int bits = 0;
protected SWIGTYPE_p_ftdi_context context = example.new_ftdi_context();
protected int bits = 0;
protected SWIGTYPE_p_ftdi_context context = example.new_ftdi_context();
@@
-10,7
+9,7
@@
public class FtdiChip {
public OutputStream getOutputStream() { return out; }
public InputStream getInputStream() { return in; }
public OutputStream getOutputStream() { return out; }
public InputStream getInputStream() { return in; }
- public FtdiChip() {
+ public FtdiUart() {
example.ftdi_init(context);
example.ftdi_usb_open(context, 0x6666, 0x3133);
example.ftdi_usb_reset(context);
example.ftdi_init(context);
example.ftdi_usb_open(context, 0x6666, 0x3133);
example.ftdi_usb_reset(context);
@@
-79,7
+78,7
@@
public class FtdiChip {
while(true) {
if (len==0) return 0;
byte[] b0 = new byte[len];
while(true) {
if (len==0) return 0;
byte[] b0 = new byte[len];
- synchronized(FtdiChip.this) {
+ synchronized(FtdiUart.this) {
result = example.ftdi_read_data(context, b0, len);
}
if (result>0) {
result = example.ftdi_read_data(context, b0, len);
}
if (result>0) {
@@
-102,7
+101,7
@@
public class FtdiChip {
while(len > 0) {
System.arraycopy(b, off, b2, 0, Math.min(b2.length, len));
int result;
while(len > 0) {
System.arraycopy(b, off, b2, 0, Math.min(b2.length, len));
int result;
- synchronized(FtdiChip.this) {
+ synchronized(FtdiUart.this) {
result = example.ftdi_write_data(context, b2, Math.min(b2.length, len));
}
off += result;
result = example.ftdi_write_data(context, b2, Math.min(b2.length, len));
}
off += result;
diff --git
a/src/edu/berkeley/obits/device/atmel/Chip.java
b/src/edu/berkeley/obits/device/atmel/Chip.java
index
36c21c0
..
f239807
100644
(file)
--- a/
src/edu/berkeley/obits/device/atmel/Chip.java
+++ b/
src/edu/berkeley/obits/device/atmel/Chip.java
@@
-13,6
+13,7
@@
public interface Chip {
public void porte(int pin, boolean b);
public void con(boolean b);
public boolean con();
public void porte(int pin, boolean b);
public void con(boolean b);
public boolean con();
+ public boolean rcon();
//remove
public void flush();
//remove
public void flush();
diff --git
a/src/edu/berkeley/obits/device/atmel/ChipImpl.java
b/src/edu/berkeley/obits/device/atmel/ChipImpl.java
index
c2c7752
..
05ed4f2
100644
(file)
--- a/
src/edu/berkeley/obits/device/atmel/ChipImpl.java
+++ b/
src/edu/berkeley/obits/device/atmel/ChipImpl.java
@@
-2,7
+2,7
@@
package edu.berkeley.obits.device.atmel;
import com.ftdi.usb.*;
import java.io.*;
import com.ftdi.usb.*;
import java.io.*;
-public class ChipImpl extends FtdiChip implements Chip {
+public class ChipImpl extends FtdiUart implements Chip {
private int dmask =
(1<<0) |
private int dmask =
(1<<0) |
@@
-107,6
+107,12
@@
public class ChipImpl extends FtdiChip implements Chip {
dbangmode(dmask);
return (readPins() & (1<<0)) != 0;
}
dbangmode(dmask);
return (readPins() & (1<<0)) != 0;
}
+ public boolean rcon() {
+ flush();
+ dmask &= ~(1<<0);
+ dbangmode(dmask);
+ return (readPins() & (1<<0)) != 0;
+ }
public void con(boolean on) {
flush();
dmask |= (1<<0);
public void con(boolean on) {
flush();
dmask |= (1<<0);
diff --git
a/src/edu/berkeley/obits/device/atmel/FtdiBoard.java
b/src/edu/berkeley/obits/device/atmel/FtdiBoard.java
index
12b339a
..
05616af
100644
(file)
--- a/
src/edu/berkeley/obits/device/atmel/FtdiBoard.java
+++ b/
src/edu/berkeley/obits/device/atmel/FtdiBoard.java
@@
-102,6
+102,7
@@
public class FtdiBoard extends Board {
d.flush();
init = d.initErr();
System.out.print("wrote " + bytes + " bytes, init="+init+" \r");
d.flush();
init = d.initErr();
System.out.print("wrote " + bytes + " bytes, init="+init+" \r");
+ d.rcon();
}
if (!init)
throw new RuntimeException("initialization failed at byte " + bytes + ", bit " + i);
}
if (!init)
throw new RuntimeException("initialization failed at byte " + bytes + ", bit " + i);