Package lejos.remote.nxt
Class RemoteNXTI2CPort
- java.lang.Object
-
- lejos.remote.nxt.RemoteNXTIOPort
-
- lejos.remote.nxt.RemoteNXTI2CPort
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,BasicSensorPort,I2CPort,IOPort,EV3SensorConstants,SensorConstants
public class RemoteNXTI2CPort extends RemoteNXTIOPort implements I2CPort
-
-
Field Summary
-
Fields inherited from class lejos.remote.nxt.RemoteNXTIOPort
currentMode, dc, nxtCommand, openPorts, port, ref, typ
-
Fields inherited from interface lejos.hardware.sensor.EV3SensorConstants
ADC_REF, ADC_RES, CMD_AUTOMATIC, CMD_COL_AMB, CMD_COL_BLU, CMD_COL_COL, CMD_COL_GRN, CMD_COL_RED, CMD_CONNECTED, CMD_DISCONNECTED, CMD_FLOAT, CMD_NONE, CMD_PIN1, CMD_PIN5, CMD_SET, CONN_DAISYCHAIN, CONN_ERROR, CONN_INPUT_DUMB, CONN_INPUT_UART, CONN_NONE, CONN_NXT_COLOR, CONN_NXT_DUMB, CONN_NXT_IIC, CONN_OUTPUT_DUMB, CONN_OUTPUT_INTELLIGENT, CONN_OUTPUT_TACHO, CONN_UNKNOWN, IIC_DATA_LENGTH, MAX_DEVICE_DATALENGTH, MOTORS, PORTS, STATUS_BUSY, STATUS_FAIL, STATUS_OK, STATUS_STOP, TYPE_ERROR, TYPE_IIC_UNKNOWN, TYPE_MINITACHO, TYPE_NEWTACHO, TYPE_NONE, TYPE_NXT_COLOR, TYPE_NXT_IIC, TYPE_NXT_LIGHT, TYPE_NXT_SOUND, TYPE_NXT_TEST, TYPE_NXT_TOUCH, TYPE_TACHO, TYPE_TERMINAL, TYPE_THIRD_PARTY_END, TYPE_THIRD_PARTY_START, TYPE_UNKNOWN, UART_MAX_MODES
-
Fields inherited from interface lejos.hardware.sensor.SensorConstants
BLACK, BLANK_INDEX, BLUE, BLUE_INDEX, BROWN, GREEN, GREEN_INDEX, MAX_TYPE, MIN_TYPE, MODE_RAW, NXT_ADC_RES, RED, RED_INDEX, TYPE_ANGLE, TYPE_COLORBLUE, TYPE_COLORFULL, TYPE_COLORGREEN, TYPE_COLORNONE, TYPE_COLORRED, TYPE_CUSTOM, TYPE_HIGHSPEED, TYPE_HIGHSPEED_9V, TYPE_HISPEED, TYPE_LIGHT_ACTIVE, TYPE_LIGHT_INACTIVE, TYPE_LOWSPEED, TYPE_LOWSPEED_9V, TYPE_NO_SENSOR, TYPE_REFLECTION, TYPE_SOUND_DB, TYPE_SOUND_DBA, TYPE_SWITCH, TYPE_TEMPERATURE, WHITE, YELLOW
-
-
Constructor Summary
Constructors Constructor Description RemoteNXTI2CPort(NXTCommand nxtCommand)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleangetChanged()protected bytegetStatus()voidi2cTransaction(int deviceAddress, byte[] writeBuf, int writeOffset, int writeLen, byte[] readBuf, int readOffset, int readLen)High level i2c interface.protected booleaninitSensor()booleanopen(int t, int p, RemoteNXTPort r)allow access to the specified portprotected voidreset()booleansetMode(int mode)Set the sensor modeprotected voidsetOperatingMode(int typ, int mode)booleansetType(int type)Set the sensor typebooleansetTypeAndMode(int type, int mode)Set the sensor type and mode-
Methods inherited from class lejos.remote.nxt.RemoteNXTIOPort
close, getMode, getName, getType, setPinMode
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface lejos.hardware.port.BasicSensorPort
getMode, getType
-
Methods inherited from interface lejos.hardware.port.IOPort
close, getName, setPinMode
-
-
-
-
Constructor Detail
-
RemoteNXTI2CPort
public RemoteNXTI2CPort(NXTCommand nxtCommand)
-
-
Method Detail
-
getChanged
protected boolean getChanged()
-
getStatus
protected byte getStatus()
-
reset
protected void reset()
-
setOperatingMode
protected void setOperatingMode(int typ, int mode)
-
initSensor
protected boolean initSensor()
-
open
public boolean open(int t, int p, RemoteNXTPort r)allow access to the specified port- Overrides:
openin classRemoteNXTIOPort- Parameters:
p- port number to opent- The type of port motor/sensorr- the Port ref for this port- Returns:
- true if success
-
i2cTransaction
public void i2cTransaction(int deviceAddress, byte[] writeBuf, int writeOffset, int writeLen, byte[] readBuf, int readOffset, int readLen)High level i2c interface. Perform a complete i2c transaction and return the results. Writes the specified data to the device and then reads the requested bytes from it.- Specified by:
i2cTransactionin interfaceI2CPort- Parameters:
deviceAddress- The I2C device address.writeBuf- The buffer containing data to be written to the device.writeOffset- The offset of the data within the write bufferwriteLen- The number of bytes to write.readBuf- The buffer to use for the transaction resultsreadOffset- Location to write the results toreadLen- The length of the read
-
setTypeAndMode
public boolean setTypeAndMode(int type, int mode)Set the sensor type and mode- Specified by:
setTypeAndModein interfaceBasicSensorPort- Overrides:
setTypeAndModein classRemoteNXTIOPort- Parameters:
type- the sensor typemode- the sensor mode- Returns:
- true if success
-
setType
public boolean setType(int type)
Set the sensor type- Specified by:
setTypein interfaceBasicSensorPort- Overrides:
setTypein classRemoteNXTIOPort- Parameters:
type- the sensor type- Returns:
- true if success
-
setMode
public boolean setMode(int mode)
Set the sensor mode- Specified by:
setModein interfaceBasicSensorPort- Overrides:
setModein classRemoteNXTIOPort- Parameters:
mode- the sensor mode- Returns:
- true if success
-
-