|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Interface class for 1-Wire® devices that perform analog measuring operations. This class should be implemented for each A/D type 1-Wire device.
ADContainer extends OneWireSensor, so the general usage
model applies to any ADContainer:
ADContainer Consider this interaction with an ADContainer that reads from all of its
A/D channels, then tries to set its high alarm on its first channel (channel 0):
//adcontainer is a com.dalsemi.onewire.container.ADContainer
byte[] state = adcontainer.readDevice();
double[] voltages = new double[adcontainer.getNumberADChannels()];
for (int i=0; i < adcontainer.getNumberADChannels(); i++)
{
adcontainer.doADConvert(i, state);
voltages[i] = adc.getADVoltage(i, state);
}
if (adcontainer.hasADAlarms())
{
double highalarm = adcontainer.getADAlarm(0, ADContainer.ALARM_HIGH, state);
adcontainer.setADAlarm(0, ADContainer.ALARM_HIGH, highalarm + 1.0, state);
adcontainer.writeDevice(state);
}
OneWireSensor,
ClockContainer,
TemperatureContainer,
PotentiometerContainer,
SwitchContainer| Field Summary | |
static int |
ALARM_HIGH
Indicates the high AD alarm. |
static int |
ALARM_LOW
Indicates the low AD alarm. |
| Method Summary | |
boolean |
canADMultiChannelRead()
Checks to see if this A/D supports doing multiple voltage conversions at the same time. |
void |
doADConvert(boolean[] doConvert,
byte[] state)
Performs voltage conversion on one or more specified channels. |
void |
doADConvert(int channel,
byte[] state)
Performs a voltage conversion on one specified channel. |
double |
getADAlarm(int channel,
int alarmType,
byte[] state)
Reads the value of the specified A/D alarm on the specified channel. |
boolean |
getADAlarmEnable(int channel,
int alarmType,
byte[] state)
Checks to see if the specified alarm on the specified channel is enabled. |
double |
getADRange(int channel,
byte[] state)
Returns the currently selected range for the specified channel. |
double[] |
getADRanges(int channel)
Gets an array of available ranges for the specified A/D channel. |
double |
getADResolution(int channel,
byte[] state)
Returns the currently selected resolution for the specified channel. |
double[] |
getADResolutions(int channel,
double range)
Gets an array of available resolutions based on the specified range on the specified A/D channel. |
double[] |
getADVoltage(byte[] state)
Reads the value of the voltages after a doADConvert(boolean[],byte[])
method call. |
double |
getADVoltage(int channel,
byte[] state)
Reads the value of the voltages after a doADConvert(int,byte[])
method call. |
int |
getNumberADChannels()
Gets the number of channels supported by this A/D. |
boolean |
hasADAlarmed(int channel,
int alarmType,
byte[] state)
Checks the state of the specified alarm on the specified channel. |
boolean |
hasADAlarms()
Checks to see if this A/D measuring device has high/low alarms. |
void |
setADAlarm(int channel,
int alarmType,
double alarm,
byte[] state)
Sets the voltage value of the specified alarm on the specified channel. |
void |
setADAlarmEnable(int channel,
int alarmType,
boolean alarmEnable,
byte[] state)
Enables or disables the specified alarm on the specified channel. |
void |
setADRange(int channel,
double range,
byte[] state)
Sets the input range for the specified channel. |
void |
setADResolution(int channel,
double resolution,
byte[] state)
Sets the conversion resolution value for the specified channel. |
| Methods inherited from interface com.dalsemi.onewire.container.OneWireSensor |
readDevice, writeDevice |
| Field Detail |
public static final int ALARM_HIGH
public static final int ALARM_LOW
| Method Detail |
public int getNumberADChannels()
getNumberADChannels() - 1)].public boolean hasADAlarms()
public double[] getADRanges(int channel)
channel - channel number in the range [0 to (getNumberADChannels() - 1)]getNumberADChannels()
public double[] getADResolutions(int channel,
double range)
channel - channel number in the range [0 to (getNumberADChannels() - 1)]range - A/D range setting from the getADRanges(int) methodchannel for this rangegetNumberADChannels(),
getADRanges(int)public boolean canADMultiChannelRead()
doADConvert(boolean[],byte[])
public void doADConvert(int channel,
byte[] state)
throws OneWireIOException,
OneWireException
getADVoltage(int,byte[]) to read
the result of this conversion, using the same channel
argument as this method uses.channel - channel number in the range [0 to (getNumberADChannels() - 1)]state - current state of the device returned from readDevice()OneWireIOException - on a 1-Wire communication error such as
no 1-Wire device present. This could be
caused by a physical interruption in the 1-Wire Network due to
shorts or a newly arriving 1-Wire device issuing a 'presence pulse'.
This is usually a recoverable error.OneWireException - on a communication or setup error with the
1-Wire adapter. This is usually a non-recoverable error.OneWireSensor.readDevice(),
getADVoltage(int,byte[])
public void doADConvert(boolean[] doConvert,
byte[] state)
throws OneWireIOException,
OneWireException
getADVoltage(byte[]) can be used to read the result
of the conversion(s). This A/D must support multi-channel read,
reported by canADMultiChannelRead(), if more then 1 channel is specified.doConvert - array of size getNumberADChannels() representing
which channels should perform conversionsstate - current state of the device returned from readDevice()OneWireIOException - on a 1-Wire communication error such as
no 1-Wire device present. This could be
caused by a physical interruption in the 1-Wire Network due to
shorts or a newly arriving 1-Wire device issuing a 'presence pulse'.
This is usually a recoverable error.OneWireException - on a communication or setup error with the
1-Wire adapter. This is usually a non-recoverable error.OneWireSensor.readDevice(),
getADVoltage(byte[]),
canADMultiChannelRead()
public double[] getADVoltage(byte[] state)
throws OneWireIOException,
OneWireException
doADConvert(boolean[],byte[])
method call. This A/D device must support multi-channel reading, reported by
canADMultiChannelRead(), if more than 1 channel conversion was attempted
by doADConvert().state - current state of the device returned from readDevice()OneWireIOException - on a 1-Wire communication error such as
no 1-Wire device present. This could be
caused by a physical interruption in the 1-Wire Network due to
shorts or a newly arriving 1-Wire device issuing a 'presence pulse'.
This is usually a recoverable error.OneWireException - on a communication or setup error with the
1-Wire adapter. This is usually a non-recoverable error.doADConvert(boolean[],byte[])
public double getADVoltage(int channel,
byte[] state)
throws OneWireIOException,
OneWireException
doADConvert(int,byte[])
method call. If more than one channel has been read it is more
efficient to use the getADVoltage(byte[]) method that
returns all channel voltage values.channel - channel number in the range [0 to (getNumberADChannels() - 1)]state - current state of the device returned from readDevice()OneWireIOException - on a 1-Wire communication error such as
no 1-Wire device present. This could be
caused by a physical interruption in the 1-Wire Network due to
shorts or a newly arriving 1-Wire device issuing a 'presence pulse'.
This is usually a recoverable error.OneWireException - on a communication or setup error with the
1-Wire adapter. This is usually a non-recoverable error.doADConvert(int,byte[]),
getADVoltage(byte[])
public double getADAlarm(int channel,
int alarmType,
byte[] state)
throws OneWireException
hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]alarmType - the desired alarm, ALARM_HIGH or ALARM_LOWstate - current state of the device returned from readDevice()OneWireException - if this device does not have A/D alarmsOneWireSensor.readDevice(),
hasADAlarms()
public boolean getADAlarmEnable(int channel,
int alarmType,
byte[] state)
throws OneWireException
hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]alarmType - the desired alarm, ALARM_HIGH or ALARM_LOWstate - current state of the device returned from readDevice()OneWireException - if this device does not have A/D alarmsOneWireSensor.readDevice(),
hasADAlarms()
public boolean hasADAlarmed(int channel,
int alarmType,
byte[] state)
throws OneWireException
hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]alarmType - the desired alarm, ALARM_HIGH or ALARM_LOWstate - current state of the device returned from readDevice()OneWireException - if this device does not have A/D alarmsOneWireSensor.readDevice(),
hasADAlarms(),
getADAlarmEnable(int,int,byte[]),
setADAlarmEnable(int,int,boolean,byte[])
public double getADResolution(int channel,
byte[] state)
channel - channel number in the range [0 to (getNumberADChannels() - 1)]state - current state of the device returned from readDevice()channel in voltsgetADResolutions(int,double),
setADResolution(int,double,byte[])
public double getADRange(int channel,
byte[] state)
channel - channel number in the range [0 to (getNumberADChannels() - 1)]state - current state of the device returned from readDevice()getADRanges(int),
setADRange(int,double,byte[])
public void setADAlarm(int channel,
int alarmType,
double alarm,
byte[] state)
throws OneWireException
writeDevice() must be called to finalize
changes to the device. Note that multiple 'set' methods can
be called before one call to writeDevice(). Also note that
not all A/D devices have alarms. Check to see if this device has
alarms first by calling the hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]alarmType - the desired alarm, ALARM_HIGH or ALARM_LOWalarm - new alarm valuestate - current state of the device returned from readDevice()OneWireException - if this device does not have A/D alarmsOneWireSensor.writeDevice(byte[]),
hasADAlarms(),
getADAlarm(int,int,byte[]),
getADAlarmEnable(int,int,byte[]),
setADAlarmEnable(int,int,boolean,byte[]),
hasADAlarmed(int,int,byte[])
public void setADAlarmEnable(int channel,
int alarmType,
boolean alarmEnable,
byte[] state)
throws OneWireException
writeDevice() must be called to finalize
changes to the device. Note that multiple 'set' methods can
be called before one call to writeDevice(). Also note that
not all A/D devices have alarms. Check to see if this device has
alarms first by calling the hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]alarmType - the desired alarm, ALARM_HIGH or ALARM_LOWalarmEnable - true to enable the alarm, false to disablestate - current state of the device returned from readDevice()OneWireException - if this device does not have A/D alarmsOneWireSensor.writeDevice(byte[]),
hasADAlarms(),
getADAlarm(int,int,byte[]),
setADAlarm(int,int,double,byte[]),
getADAlarmEnable(int,int,byte[]),
hasADAlarmed(int,int,byte[])
public void setADResolution(int channel,
double resolution,
byte[] state)
writeDevice() must be called to finalize
changes to the device. Note that multiple 'set' methods can
be called before one call to writeDevice(). Also note that
not all A/D devices have alarms. Check to see if this device has
alarms first by calling the hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]resolution - one of the resolutions returned by getADResolutions(int,double)state - current state of the device returned from readDevice()getADResolutions(int,double),
getADResolution(int,byte[])
public void setADRange(int channel,
double range,
byte[] state)
writeDevice() must be called to finalize
changes to the device. Note that multiple 'set' methods can
be called before one call to writeDevice(). Also note that
not all A/D devices have alarms. Check to see if this device has
alarms first by calling the hasADAlarms() method.channel - channel number in the range [0 to (getNumberADChannels() - 1)]range - one of the ranges returned by getADRanges(int)state - current state of the device returned from readDevice()getADRanges(int),
getADRange(int,byte[])
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||