1-Wire API for .NET Version 4.00
|
Inherits com::dalsemi::onewire::container::OneWireContainer.
Public Member Functions | |
OneWireContainer02 () | |
Create an empty container. | |
OneWireContainer02 (DSPortAdapter sourceAdapter, byte[] newAddress) | |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device. | |
OneWireContainer02 (DSPortAdapter sourceAdapter, long newAddress) | |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device. | |
OneWireContainer02 (DSPortAdapter sourceAdapter, String newAddress) | |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device. | |
String | getName () |
Retrieves the Maxim Integrated Products part number of the 1-Wire device as a String . | |
String | getAlternateNames () |
Retrieves the alternate Maxim Integrated Products part numbers or names. | |
String | getDescription () |
Retrieves a short description of the function of the 1-Wire device type. | |
void | writeScratchpad (int addr, byte[] data) throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes the data to the scratchpad from the given address. | |
byte[] | readScratchpad () throws OneWireIOException, OneWireException |
Reads the entire scratchpad. | |
void | copyScratchpad (int key, byte[] passwd, int blockNum) throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes the data from the scratchpad to the specified block or blocks. | |
byte[] | readSubkey (int key, byte[] passwd) throws OneWireIOException, OneWireException, IllegalArgumentException |
Reads the subkey requested with the given key name and password. | |
void | readSubkey (byte[] data, int key, byte[] passwd) throws OneWireIOException, OneWireException, IllegalArgumentException |
Reads the subkey requested with the given key name and password. | |
void | writePassword (int key, byte[] oldName, byte[] newName, byte[] newPasswd) throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes a new identifier and password to the secure subkey iButton. | |
void | writeSubkey (int key, int addr, byte[] passwd, byte[] data) throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes new data to the secure subkey. |
1-Wire® container that encapsulates the functionality of the 1-Wire family type 02 (hex), Maxim Integrated Products part number: DS1991, MultiKey.
This iButton is primarily used as a minimal security read/write portable memory device.
All memory is accessed through read/write routines, no MemoryBank
classes are used.
http://pdfserv.maxim-ic.com/arpdf/DS1991.pdf
http://pdfserv.maxim-ic.com/arpdf/DS1425.pdf
Create an empty container.
Must call setupContainer
before using this new container.
This is one of the methods to construct a container. The others are through creating a OneWireContainer with parameters.
OneWireContainer02 | ( | DSPortAdapter | sourceAdapter, |
byte[] | newAddress | ||
) |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device.
This is one of the methods to construct a container. The other is through creating a OneWireContainer with NO parameters.
sourceAdapter | adapter object required to communicate with this iButton. |
newAddress | address of this 1-Wire device |
OneWireContainer02 | ( | DSPortAdapter | sourceAdapter, |
long | newAddress | ||
) |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device.
This is one of the methods to construct a container. The other is through creating a OneWireContainer with NO parameters.
sourceAdapter | adapter object required to communicate with this iButton. |
newAddress | address of this 1-Wire device |
OneWireContainer02 | ( | DSPortAdapter | sourceAdapter, |
String | newAddress | ||
) |
Create a container with a provided adapter object and the address of the iButton or 1-Wire device.
This is one of the methods to construct a container. The other is through creating a OneWireContainer with NO parameters.
sourceAdapter | adapter object required to communicate with this iButton. |
newAddress | address of this 1-Wire device |
void copyScratchpad | ( | int | key, |
byte[] | passwd, | ||
int | blockNum | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes the data from the scratchpad to the specified block or blocks.
Note that the write will erase the data from the scratchpad.
key | subkey being written |
passwd | password for the subkey being written |
blockNum | number of the block to be copied (see page 7 of the DS1991 data sheet) block 0-7, or 8 to copy all 64 bytes. |
IllegalArgumentException | If key is out of range (0 to 2), or password is not 8 characters, or if blockNum is out of range (0 to 8) |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
String getAlternateNames | ( | ) |
Retrieves the alternate Maxim Integrated Products part numbers or names.
A 'family' of 1-Wire Network 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 | ( | ) |
Retrieves a short description of the function of the 1-Wire device type.
Reimplemented from OneWireContainer.
String getName | ( | ) |
Retrieves the Maxim Integrated Products part number of the 1-Wire device as a String
.
For example 'Crypto iButton' or 'DS1992'.
Reimplemented from OneWireContainer.
byte [] readScratchpad | ( | ) | throws OneWireIOException, OneWireException |
Reads the entire scratchpad.
byte[]
containing the data from the scratchpad; the array will have a length of 64.OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
byte [] readSubkey | ( | int | key, |
byte[] | passwd | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Reads the subkey requested with the given key name and password.
Note that this method allows for reading from the subkey data only which starts at address 0x10 within a key. It does not allow reading from any earlier address within a key because the device cannot be force to allow reading the password. This is why the subkey number is or-ed with 0x10 in creating the address in bytes 1 and 2 of the sendBlock.
key | number indicating the key to be read: 0, 1, or 2 |
passwd | password of destination subkey |
IllegalArgumentException | If key is out of range (0 to 2), or password is not 8 characters, or if data does not have a length of 64 |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
void readSubkey | ( | byte[] | data, |
int | key, | ||
byte[] | passwd | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Reads the subkey requested with the given key name and password.
Note that this method allows for reading from the subkey data only which starts at address 0x10 within a key. It does not allow reading from any earlier address within a key because the device cannot be force to allow reading the password. This is why the subkey number is or-ed with 0x10 in creating the address in bytes 1 and 2 of the sendBlock.
data | buffer of length 64 into which to write the data |
key | number indicating the key to be read: 0, 1, or 2 |
passwd | password of destination subkey |
IllegalArgumentException | If key is out of range (0 to 2), or password is not 8 characters, or if data does not have a length of 64 |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
void writePassword | ( | int | key, |
byte[] | oldName, | ||
byte[] | newName, | ||
byte[] | newPasswd | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes a new identifier and password to the secure subkey iButton.
key | number indicating the key to be read: 0, 1, or 2 |
oldName | identifier of the key used to confirm the correct key's password to be changed. Must be exactly length 8. |
newName | identifier to be used for the key with the new password. Must be exactly length 8. |
newPasswd | new password for destination subkey. Must be exactly length 8. |
IllegalArgumentException | If key value is out of range (0 to 2), or if newPasswd, newName, or oldName are not 8 characters |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
void writeScratchpad | ( | int | addr, |
byte[] | data | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes the data to the scratchpad from the given address.
addr | address to begin writing. Must be between 0x00 and 0x3F. |
data | data to write. |
IllegalArgumentException | If address is out of range, or data is to long for scratchpad |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |
void writeSubkey | ( | int | key, |
int | addr, | ||
byte[] | passwd, | ||
byte[] | data | ||
) | throws OneWireIOException, OneWireException, IllegalArgumentException |
Writes new data to the secure subkey.
key | number indicating the key to be written: 0, 1, or 2 |
addr | address to start writing at ( 0x00 to 0x3F ) |
passwd | passwird for the subkey |
data | data to be written |
IllegalArgumentException | If key is out of range (0 to 2), or if address is out of range, or if passwd is not 8 characters, or if data length is out of bounds |
OneWireIOException | If device is not found on the 1-Wire network |
OneWireException | on a communication or setup error with the 1-Wire adapter |