1-Wire API for .NET Version 4.00
|
Inherits com::dalsemi::onewire::container::OneWireSensor.
Inherited by OneWireContainer20, OneWireContainer30, and OneWireContainer41.
Public Member Functions | |
int | getNumberADChannels () |
Gets the number of channels supported by this A/D. | |
boolean | hasADAlarms () |
Checks to see if this A/D measuring device has high/low alarms. | |
double[] | getADRanges (int channel) |
Gets an array of available ranges for the specified A/D channel. | |
double[] | getADResolutions (int channel, double range) |
Gets an array of available resolutions based on the specified range on the specified A/D channel. | |
boolean | canADMultiChannelRead () |
Checks to see if this A/D supports doing multiple voltage conversions at the same time. | |
void | doADConvert (int channel, byte[] state) throws OneWireIOException, OneWireException |
Performs a voltage conversion on one specified channel. | |
void | doADConvert (boolean[] doConvert, byte[] state) throws OneWireIOException, OneWireException |
Performs voltage conversion on one or more specified channels. | |
double[] | getADVoltage (byte[] state) throws OneWireIOException, OneWireException |
Reads the value of the voltages after a doADConvert(boolean[],byte[]) method call. | |
double | getADVoltage (int channel, byte[] state) throws OneWireIOException, OneWireException |
Reads the value of the voltages after a doADConvert(int,byte[]) method call. | |
double | getADAlarm (int channel, int alarmType, byte[] state) throws OneWireException |
Reads the value of the specified A/D alarm on the specified channel. | |
boolean | getADAlarmEnable (int channel, int alarmType, byte[] state) throws OneWireException |
Checks to see if the specified alarm on the specified channel is enabled. | |
boolean | hasADAlarmed (int channel, int alarmType, byte[] state) throws OneWireException |
Checks the state of the specified alarm on the specified channel. | |
double | getADResolution (int channel, byte[] state) |
Returns the currently selected resolution for the specified channel. | |
double | getADRange (int channel, byte[] state) |
Returns the currently selected range for the specified channel. | |
void | setADAlarm (int channel, int alarmType, double alarm, byte[] state) throws OneWireException |
Sets the voltage value of the specified alarm on the specified channel. | |
void | setADAlarmEnable (int channel, int alarmType, boolean alarmEnable, byte[] state) throws OneWireException |
Enables or disables the specified alarm on the specified channel. | |
void | setADResolution (int channel, double resolution, byte[] state) |
Sets the conversion resolution value for the specified channel. | |
void | setADRange (int channel, double range, byte[] state) |
Sets the input range for the specified channel. | |
Static Public Attributes | |
static final int | ALARM_HIGH = 1 |
Indicates the high AD alarm. | |
static final int | ALARM_LOW = 0 |
Indicates the low AD alarm. |
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);
}
boolean canADMultiChannelRead | ( | ) |
Checks to see if this A/D supports doing multiple voltage conversions at the same time.
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void doADConvert | ( | int | channel, |
byte[] | state | ||
) | throws OneWireIOException, OneWireException |
Performs a voltage conversion on one specified channel.
Use the method 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. |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void doADConvert | ( | boolean[] | doConvert, |
byte[] | state | ||
) | throws OneWireIOException, OneWireException |
Performs voltage conversion on one or more specified channels.
The method 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 conversions |
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. |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double getADAlarm | ( | int | channel, |
int | alarmType, | ||
byte[] | state | ||
) | throws OneWireException |
Reads the value of the specified A/D alarm on the specified channel.
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_LOW |
state | current state of the device returned from readDevice() |
OneWireException | if this device does not have A/D alarms |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
boolean getADAlarmEnable | ( | int | channel, |
int | alarmType, | ||
byte[] | state | ||
) | throws OneWireException |
Checks to see if the specified alarm on the specified channel is enabled.
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_LOW |
state | current state of the device returned from readDevice() |
OneWireException | if this device does not have A/D alarms |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double getADRange | ( | int | channel, |
byte[] | state | ||
) |
Returns the currently selected range for the specified channel.
This device may not have selectable ranges, though this method will return a valid value.
channel | channel number in the range [0 to (getNumberADChannels() - 1)] |
state | current state of the device returned from readDevice() |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double [] getADRanges | ( | int | channel | ) |
Gets an array of available ranges for the specified A/D channel.
channel | channel number in the range [0 to (getNumberADChannels() - 1)] |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double getADResolution | ( | int | channel, |
byte[] | state | ||
) |
Returns the currently selected resolution for the specified channel.
This device may not have selectable resolutions, though this method will return a valid value.
channel | channel number in the range [0 to (getNumberADChannels() - 1)] |
state | current state of the device returned from readDevice() |
channel
in voltsImplemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double [] getADResolutions | ( | int | channel, |
double | range | ||
) |
Gets an array of available resolutions based on the specified range on the specified A/D channel.
channel | channel number in the range [0 to (getNumberADChannels() - 1)] |
range | A/D range setting from the getADRanges(int) method |
channel
for this range
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double [] getADVoltage | ( | byte[] | state | ) | throws OneWireIOException, OneWireException |
Reads the value of the voltages after a 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. |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
double getADVoltage | ( | int | channel, |
byte[] | state | ||
) | throws OneWireIOException, OneWireException |
Reads the value of the voltages after a 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. |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
int getNumberADChannels | ( | ) |
Gets the number of channels supported by this A/D.
Channel specific methods will use a channel number specified by an integer from [0 to (getNumberADChannels()
- 1)].
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
boolean hasADAlarmed | ( | int | channel, |
int | alarmType, | ||
byte[] | state | ||
) | throws OneWireException |
Checks the state of the specified alarm on the specified channel.
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_LOW |
state | current state of the device returned from readDevice() |
OneWireException | if this device does not have A/D alarms |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
boolean hasADAlarms | ( | ) |
Checks to see if this A/D measuring device has high/low alarms.
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void setADAlarm | ( | int | channel, |
int | alarmType, | ||
double | alarm, | ||
byte[] | state | ||
) | throws OneWireException |
Sets the voltage value of the specified alarm on the specified channel.
The method 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_LOW |
alarm | new alarm value |
state | current state of the device returned from readDevice() |
OneWireException | if this device does not have A/D alarms |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void setADAlarmEnable | ( | int | channel, |
int | alarmType, | ||
boolean | alarmEnable, | ||
byte[] | state | ||
) | throws OneWireException |
Enables or disables the specified alarm on the specified channel.
The method 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_LOW |
alarmEnable | true to enable the alarm, false to disable |
state | current state of the device returned from readDevice() |
OneWireException | if this device does not have A/D alarms |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void setADRange | ( | int | channel, |
double | range, | ||
byte[] | state | ||
) |
Sets the input range for the specified channel.
The method 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() |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.
void setADResolution | ( | int | channel, |
double | resolution, | ||
byte[] | state | ||
) |
Sets the conversion resolution value for the specified channel.
The method 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() |
Implemented in OneWireContainer20, OneWireContainer30, and OneWireContainer41.