1-Wire API for .NET Version 4.00
|
Inherits com::dalsemi::onewire::container::OneWireContainer, and com::dalsemi::onewire::container::SwitchContainer.
Public Member Functions | |
OneWireContainer3A () | |
Creates a new OneWireContainer for communication with a DS2413. | |
OneWireContainer3A (DSPortAdapter sourceAdapter, byte[] newAddress) | |
Creates a new OneWireContainer for communication with a DS2413. | |
OneWireContainer3A (DSPortAdapter sourceAdapter, long newAddress) | |
Creates a new OneWireContainer for communication with a DS2413. | |
OneWireContainer3A (DSPortAdapter sourceAdapter, String newAddress) | |
Creates a new OneWireContainer for communication with a DS2413. | |
String | getName () |
Gets the Maxim Integrated Products part number of the iButton or 1-Wire Device as a java.lang.String . | |
String | getAlternateNames () |
Retrieves the alternate Maxim Integrated Products part numbers or names. | |
String | getDescription () |
Gets a short description of the function of this iButton or 1-Wire Device type. | |
int | getMaxSpeed () |
Returns the maximum speed this iButton or 1-Wire device can communicate at. | |
int | getNumberChannels (byte[] state) |
Gets the number of channels supported by this switch. | |
boolean | isHighSideSwitch () |
Checks if the channels of this switch are 'high side' switches. | |
boolean | hasActivitySensing () |
Checks if the channels of this switch support activity sensing. | |
boolean | hasLevelSensing () |
Checks if the channels of this switch support level sensing. | |
boolean | hasSmartOn () |
Checks if the channels of this switch support 'smart on'. | |
boolean | onlySingleChannelOn () |
Checks if the channels of this switch require that only one channel is on at any one time. | |
boolean | getLevel (int channel, byte[] state) |
Checks the sensed level on the indicated channel. | |
boolean | getLatchState (int channel, byte[] state) |
Checks the latch state of the indicated channel. | |
boolean | getSensedActivity (int channel, byte[] state) throws OneWireException |
Checks if the indicated channel has experienced activity. | |
void | clearActivity () throws OneWireException |
Clears the activity latches the next time possible. | |
void | setLatchState (int channel, boolean latchState, boolean doSmart, byte[] state) |
Sets the latch state of the indicated channel. | |
void | setLatchState (byte set, byte[] state) |
Sets the latch state for all of the channels. | |
byte[] | readDevice () throws OneWireIOException, OneWireException |
Retrieves the 1-Wire device sensor state. | |
byte[] | readRegister () throws OneWireIOException, OneWireException |
Retrieves the 1-Wire device register mask. | |
void | writeDevice (byte state[]) throws OneWireIOException, OneWireException |
Writes the 1-Wire device sensor state that have been changed by 'set' methods. | |
void | writeRegister (byte[] register) throws OneWireIOException, OneWireException |
Writes the 1-Wire device register mask that have been changed by 'set' methods. | |
Static Public Attributes | |
static final byte | PIO_ACCESS_READ = ( byte ) 0xF5 |
PIO Access read command. | |
static final byte | PIO_ACCESS_WRITE = ( byte ) 0x5A |
PIO Access read command. |
1-Wire® container for a Single Addressable Switch, DS2413. This container encapsulates the functionality of the 1-Wire family type 3A (hex)
Creates a new OneWireContainer
for communication with a DS2413.
Note that the method setupContainer(com.dalsemi.onewire.adapter.DSPortAdapter,byte[])
must be called to set the correct DSPortAdapter
device address.
OneWireContainer3A | ( | DSPortAdapter | sourceAdapter, |
byte[] | newAddress | ||
) |
Creates a new OneWireContainer
for communication with a DS2413.
sourceAdapter | adapter object required to communicate with this 1-Wire device |
newAddress | address of this DS2413 |
OneWireContainer3A | ( | DSPortAdapter | sourceAdapter, |
long | newAddress | ||
) |
Creates a new OneWireContainer
for communication with a DS2413.
sourceAdapter | adapter object required to communicate with this 1-Wire device |
newAddress | address of this DS2413 |
OneWireContainer3A | ( | DSPortAdapter | sourceAdapter, |
String | newAddress | ||
) |
Creates a new OneWireContainer
for communication with a DS2413.
sourceAdapter | adapter object required to communicate with this 1-Wire device |
newAddress | address of this DS2413 |
void clearActivity | ( | ) | throws OneWireException |
Clears the activity latches the next time possible.
For example, on a DS2406/07, this happens the next time the status is read with readDevice()
.
OneWireException | if this device does not support activity sensing |
Implements SwitchContainer.
String getAlternateNames | ( | ) |
Retrieves the alternate Maxim Integrated Products part numbers or names.
A 'family' of MicroLAN devices may have more than one part number depending on packaging. There can also be nicknames such as "Crypto iButton".
Reimplemented from OneWireContainer.
String getDescription | ( | ) |
Gets a short description of the function of this iButton or 1-Wire Device type.
Reimplemented from OneWireContainer.
boolean getLatchState | ( | int | channel, |
byte[] | state | ||
) |
Checks the latch state of the indicated channel.
channel | channel to execute this operation, in the range [0 to (getNumberChannels(byte[]) - 1)] |
state | current state of the device returned from readDevice() |
true
if channel latch is 'on' or conducting and false
if channel latch is 'off' and not conducting. Note that the actual output when the latch is 'on' is returned from the isHighSideSwitch()
method.Implements SwitchContainer.
boolean getLevel | ( | int | channel, |
byte[] | state | ||
) |
Checks the sensed level on the indicated channel.
To avoid an exception, verify that this switch has level sensing with the hasLevelSensing()
. Level sensing means that the device can sense the logic level on its PIO pin.
channel | channel to execute this operation, in the range [0 to (getNumberChannels(byte[]) - 1)] |
state | current state of the device returned from readDevice() |
true
if level sensed is 'high' and false
if level sensed is 'low'Implements SwitchContainer.
int getMaxSpeed | ( | ) |
Returns the maximum speed this iButton or 1-Wire device can communicate at.
Reimplemented from OneWireContainer.
String getName | ( | ) |
Gets the Maxim Integrated Products part number of the iButton or 1-Wire Device as a java.lang.String
.
For example "DS1992".
Reimplemented from OneWireContainer.
int getNumberChannels | ( | byte[] | state | ) |
Gets the number of channels supported by this switch.
Channel specific methods will use a channel number specified by an integer from [0 to (getNumberChannels(byte[])
- 1)]. Note that all devices of the same family will not necessarily have the same number of channels.
state | current state of the device returned from readDevice() |
Implements SwitchContainer.
boolean getSensedActivity | ( | int | channel, |
byte[] | state | ||
) | throws OneWireException |
Checks if the indicated channel has experienced activity.
This occurs when the level on the PIO pins changes. To clear the activity that is reported, call clearActivity()
. To avoid an exception, verify that this device supports activity sensing by calling the method hasActivitySensing()
.
channel | channel to execute this operation, in the range [0 to (getNumberChannels(byte[]) - 1)] |
state | current state of the device returned from readDevice() |
true
if activity was detected and false
if no activity was detectedOneWireException | if this device does not have activity sensing |
Implements SwitchContainer.
boolean hasActivitySensing | ( | ) |
Checks if the channels of this switch support activity sensing.
If this method returns true
then the method getSensedActivity(int,byte[])
can be used.
true
if channels support activity sensingImplements SwitchContainer.
boolean hasLevelSensing | ( | ) |
Checks if the channels of this switch support level sensing.
If this method returns true
then the method getLevel(int,byte[])
can be used.
true
if channels support level sensingImplements SwitchContainer.
boolean hasSmartOn | ( | ) |
Checks if the channels of this switch support 'smart on'.
Smart on is the ability to turn on a channel such that only 1-Wire device on this channel are awake and ready to do an operation. This greatly reduces the time to discover the device down a branch. If this method returns true
then the method setLatchState(int,boolean,boolean,byte[])
can be used with the doSmart
parameter true
.
true
if channels support 'smart on'Implements SwitchContainer.
boolean isHighSideSwitch | ( | ) |
Checks if the channels of this switch are 'high side' switches.
This indicates that when 'on' or true
, the switch output is connect to the 1-Wire data. If this method returns false
then when the switch is 'on' or true
, the switch is connected to ground.
true
if the switch is a 'high side' switch, false
if the switch is a 'low side' switchImplements SwitchContainer.
boolean onlySingleChannelOn | ( | ) |
Checks if the channels of this switch require that only one channel is on at any one time.
If this method returns true
then the method setLatchState(int,boolean,boolean,byte[])
will not only affect the state of the given channel but may affect the state of the other channels as well to insure that only one channel is on at a time.
true
if only one channel can be on at a time.Implements SwitchContainer.
byte [] readDevice | ( | ) | throws OneWireIOException, OneWireException |
Retrieves the 1-Wire device sensor state.
This state is returned as a byte array. Pass this byte array to the 'get' and 'set' methods. If the device state needs to be changed then call the 'writeDevice' to finalize the changes.
OneWireIOException | on a 1-Wire communication error such as reading an incorrect CRC from a 1-Wire device. 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'. |
OneWireException | on a communication or setup error with the 1-Wire adapter |
Implements OneWireSensor.
byte [] readRegister | ( | ) | throws OneWireIOException, OneWireException |
Retrieves the 1-Wire device register mask.
This register is returned as a byte array. Pass this byte array to the 'get' and 'set' methods. If the device register mask needs to be changed then call the 'writeRegister' to finalize the changes.
OneWireIOException | on a 1-Wire communication error such as reading an incorrect CRC from a 1-Wire device. 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'. |
OneWireException | on a communication or setup error with the 1-Wire adapter |
void setLatchState | ( | int | channel, |
boolean | latchState, | ||
boolean | doSmart, | ||
byte[] | state | ||
) |
Sets the latch state of the indicated 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()
.
channel | channel to execute this operation, in the range [0 to (getNumberChannels(byte[]) - 1)] |
latchState | true to set the channel latch 'on' (conducting) and false to set the channel latch 'off' (not conducting). Note that the actual output when the latch is 'on' is returned from the isHighSideSwitch() method. |
doSmart | If latchState is 'on'/true then doSmart indicates if a 'smart on' is to be done. To avoid an exception check the capabilities of this device using the hasSmartOn() method. |
state | current state of the device returned from readDevice() |
Implements SwitchContainer.
void setLatchState | ( | byte | set, |
byte[] | state | ||
) |
Sets the latch state for all of the channels.
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()
.
set | the state to set all of the channels, in the range [0 to (getNumberChannels(byte[]) - 1)] |
state | current state of the device returned from readDevice() |
void writeDevice | ( | byte | state[] | ) | throws OneWireIOException, OneWireException |
Writes the 1-Wire device sensor state that have been changed by 'set' methods.
Only the state registers that changed are updated. This is done by referencing a field information appended to the state data.
state | 1-Wire device PIO access write (x x x x x x PIOB PIOA) |
OneWireIOException | on a 1-Wire communication error such as reading an incorrect CRC from a 1-Wire device. 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'. |
OneWireException | on a communication or setup error with the 1-Wire adapter |
Implements OneWireSensor.
void writeRegister | ( | byte[] | register | ) | throws OneWireIOException, OneWireException |
Writes the 1-Wire device register mask that have been changed by 'set' methods.
register | 1-Wire device sensor state |
OneWireIOException | on a 1-Wire communication error such as reading an incorrect CRC from a 1-Wire device. 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'. |
OneWireException | on a communication or setup error with the 1-Wire adapter |