|
|
@@ -1,5 +1,8 @@
|
|
|
package info.hkzlab.dupal.analyzer.palanalisys.explorers;
|
|
|
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+
|
|
|
import info.hkzlab.dupal.analyzer.board.boardio.DuPALCmdInterface;
|
|
|
import info.hkzlab.dupal.analyzer.devices.PALSpecs;
|
|
|
import info.hkzlab.dupal.analyzer.exceptions.DuPALBoardException;
|
|
|
@@ -8,6 +11,8 @@ import info.hkzlab.dupal.analyzer.palanalisys.graph.OutStatePins;
|
|
|
import info.hkzlab.dupal.analyzer.utilities.BitUtils;
|
|
|
|
|
|
public class OSExplorer {
|
|
|
+ private static final Logger logger = LoggerFactory.getLogger(OSExplorer.class);
|
|
|
+
|
|
|
private OSExplorer() {};
|
|
|
|
|
|
public static void exploreOutStates(final DuPALCmdInterface dpci, int ioAsOutMask) throws DuPALBoardException {
|
|
|
@@ -16,6 +21,7 @@ public class OSExplorer {
|
|
|
int ioAsOut_W = BitUtils.scatterBitField(BitUtils.consolidateBitField(ioAsOutMask, pSpecs.getMask_IO_R()), pSpecs.getMask_IO_W());
|
|
|
int pinState_A, pinState_B;
|
|
|
OutStatePins osp;
|
|
|
+ OutState curState;
|
|
|
|
|
|
dpci.write(0); // Set every input pin (and I/Os too) to low
|
|
|
pinState_A = dpci.read();
|
|
|
@@ -23,7 +29,12 @@ public class OSExplorer {
|
|
|
pinState_B = dpci.read();
|
|
|
osp = extractOutPinStates(pSpecs, ioAsOutMask, pinState_A, pinState_B);
|
|
|
|
|
|
- new OutState(osp, maxLinks);
|
|
|
+ curState = new OutState(osp, maxLinks);
|
|
|
+ logger.info("exploreOutStates() -> Initial state: " + curState);
|
|
|
+
|
|
|
+ //while(curState != null) {
|
|
|
+
|
|
|
+ //}
|
|
|
}
|
|
|
|
|
|
private static OutStatePins extractOutPinStates(PALSpecs pSpecs, int ioAsOutMask, int read_a, int read_b) {
|