Dallas Semiconductor 1-Wire API 1.00 Alpha: Class OneWireContainer13

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.dalsemi.onewire.container
Class OneWireContainer13

    java.lang.Object
      |
      +--com.dalsemi.onewire.container.OneWireContainer
            |
            +--com.dalsemi.onewire.container.OneWireContainer13

public class OneWireContainer13
extends OneWireContainer

1-Wire container for 512 byte Add-Only memory (EPROM) iButton, DS1983 and 1-Wire Chip, DS2503. This container encapsulates the functionality of the 1-Wire family type 13 (hex)

The iButton package for this device is primarily used as a read/write portable memory device. The 1-Wire Chip version is used for small non-volatile storage.

### Features

- 4096 bits (512 bytes) Electrically Programmable Read-Only Memory (EPROM) communicates with the economy of one signal plus ground
- EPROM partitioned into 256-bit (32-byte) pages for randomly accessing packetized data
- Each memory page can be permanently write-protected to prevent tampering
- Device is an "add only" memory where additional data can be programmed into EPROM without disturbing existing data
- Architecture allows software to patch data by superseding an old page in favor of a newly programmed page
- Reads over a wide voltage range of 2.8V to 6.0V from -40°C to +85°C; programs at 11.5V to 12.0V from -40°C to +50°C

### Alternate Names

- D2503

### Memory

The memory can be accessed through the objects that are returned from the `getMemoryBanks` method.

The following is a list of the MemoryBank instances that are returned:

- Main Memory
  - Implements `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`
  - Size 512 starting at physical address 0
  - Features Write-once general-purpose non-volatile needs-program-pulse
  - Pages 16 pages of length 32 bytes giving 29 bytes Packet data payload
  - Page Features page-device-CRC pages-redirectable pages-lockable redirection-lockable
  - Extra information for each page Inverted redirection page, length 1
- Write protect pages
  - Implements `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`
  - Size 8 starting at physical address 0 (in STATUS memory area)
  - Features Write-once not-general-purpose non-volatile needs-program-pulse
  - Pages 1 pages of length 8 bytes
  - Page Features page-device-CRC
- Write protect redirection
  - Implements `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`
  - Size 8 starting at physical address 32 (in STATUS memory area)
  - Features Write-once not-general-purpose non-volatile needs-program-pulse
  - Pages 1 pages of length 8 bytes
  - Page Features page-device-CRC
- Bitmap of used pages for file structure
  - Implements `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`
  - Size 8 starting at physical address 64 (in STATUS memory area)
  - Features Write-once not-general-purpose non-volatile needs-program-pulse
  - Pages 1 pages of length 8 bytes
  - Page Features page-device-CRC
- Page redirection bytes
  - Implements `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`
  - Size 16 starting at physical address 256 (in STATUS memory area)
  - Features Write-once not-general-purpose non-volatile needs-program-pulse
  - Pages 2 pages of length 8 bytes
  - Page Features page-device-CRC

### Usage

  See the usage example in `OneWireContainer` to enumerate the MemoryBanks.
  See the usage examples in `MemoryBank`, `PagedMemoryBank`, and `OTPMemoryBank` for bank specific operations.

### DataSheets

  (not available)

Version:
  0.00, 28 Aug 2000
See Also:
  `MemoryBank`, `PagedMemoryBank`, `OTPMemoryBank`, `OneWireContainer09`, `OneWireContainer0B`, `OneWireContainer0F`

Constructor Summary
`OneWireContainer13()` Create an empty container that is not complete until after a call to `setupContainer`.
`OneWireContainer13(DSPortAdapter sourceAdapter, byte[] newAddress)` Create a container with the provided adapter instance and the address of the iButton or 1-Wire device.
`OneWireContainer13(DSPortAdapter sourceAdapter, long newAddress)` Create a container with the provided adapter instance and the address of the iButton or 1-Wire device.
`OneWireContainer13(DSPortAdapter sourceAdapter, String newAddress)` Create a container with the provided adapter instance and the address of the iButton or 1-Wire device.

Method Summary
`String` | `getAlternateNames()` Get the alternate Dallas Semiconductor part numbers or names.
`String` | `getDescription()` Get a short description of the function of this iButton or 1-Wire Device type.
`Enumeration` | `getMemoryBanks()` Get an enumeration of memory bank instances that implement one or more of the following interfaces: `MemoryBank`, `PagedMemoryBank`, and `OTPMemoryBank`.
`String` | `getName()` Get the Dallas Semiconductor part number of the iButton or 1-Wire Device as a string.

Methods inherited from class com.dalsemi.onewire.container.OneWireContainer
`doSpeed, getAdapter, getAddress, getAddressAsLong, getAddressAsString, getMaxSpeed, isAlarming, isPresent, setSpeed, setupContainer, setupContainer, setupContainer`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### OneWireContainer13

    public OneWireContainer13()

  Create an empty container that is not complete until after a call to `setupContainer`.

  This is one of the methods to construct a container. The others are through creating a OneWireContainer with parameters.

  See Also:
    `super.setupContainer()`

### OneWireContainer13

    public OneWireContainer13(DSPortAdapter sourceAdapter,
                              byte[] newAddress)

  Create a container with the provided adapter instance 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.

  Parameters:
    `sourceAdapter` - adapter instance used to communicate with this iButton
    `newAddress` - `Address` of this 1-Wire device
  See Also:
    `OneWireContainer13`, `utils.Address`

### OneWireContainer13

    public OneWireContainer13(DSPortAdapter sourceAdapter,
                              long newAddress)

  Create a container with the provided adapter instance 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.

  Parameters:
    `sourceAdapter` - adapter instance used to communicate with this 1-Wire device
    `newAddress` - `Address` of this 1-Wire device
  See Also:
    `OneWireContainer13`, `utils.Address`

### OneWireContainer13

    public OneWireContainer13(DSPortAdapter sourceAdapter,
                              String newAddress)

  Create a container with the provided adapter instance 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.

  Parameters:
    `sourceAdapter` - adapter instance used to communicate with this 1-Wire device
    `newAddress` - `Address` of this 1-Wire device
  See Also:
    `OneWireContainer13`, `utils.Address`

Method Detail

### getName

    public String getName()

  Get the Dallas Semiconductor part number of the iButton or 1-Wire Device as a string. For example 'DS1992'.
  Overrides:
    `getName` in class `OneWireContainer`
  Returns:
    iButton or 1-Wire device name

### getAlternateNames

    public String getAlternateNames()

  Get the alternate Dallas Semiconductor 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'.
  Overrides:
    `getAlternateNames` in class `OneWireContainer`
  Returns:
    1-Wire device alternate names

### getDescription

    public String getDescription()

  Get a short description of the function of this iButton or 1-Wire Device type.
  Overrides:
    `getDescription` in class `OneWireContainer`
  Returns:
    device description

### getMemoryBanks

    public Enumeration getMemoryBanks()

  Get an enumeration of memory bank instances that implement one or more of the following interfaces: `MemoryBank`, `PagedMemoryBank`, and `OTPMemoryBank`.
  Overrides:
    `getMemoryBanks` in class `OneWireContainer`
  Returns:
    `Enumeration` of memory banks

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD