Class OneWireContainer0B


  • public class OneWireContainer0B
    extends OneWireContainer

    1-Wire container for 2048 byte Add-Only memory (EPROM) iButton, DS1985 and 1-Wire Chip, DS2505. This container encapsulates the functionality of the 1-Wire family type 0B (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

    • 16384 bits (2048 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@htmlonly °C @endhtmlonly to +85@htmlonly °C @endhtmlonly; programs at 11.5V to 12.0V from -40@htmlonly °C @endhtmlonly to +50@htmlonly °C @endhtmlonly

    Alternate Names

    • D2505

    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 2048 starting at physical address 0
      • Features Write-once general-purpose non-volatile needs-program-pulse
      • Pages 64 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 64 starting at physical address 256 (in STATUS memory area)
      • Features Write-once not-general-purpose non-volatile needs-program-pulse
      • Pages 8 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

    http://pdfserv.maxim-ic.com/arpdf/DS2505.pdf
    http://pdfserv.maxim-ic.com/arpdf/DS1985.pdf
    See Also:
    MemoryBank, PagedMemoryBank, OTPMemoryBank, OneWireContainer09, OneWireContainer0F
    • Constructor Detail

      • OneWireContainer0B

        public OneWireContainer0B()
        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()
      • OneWireContainer0B

        public OneWireContainer0B​(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:
        OneWireContainer0B, utils.Address
      • OneWireContainer0B

        public OneWireContainer0B​(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:
        OneWireContainer0B, utils.Address
      • OneWireContainer0B

        public OneWireContainer0B​(DSPortAdapter sourceAdapter,
                                  java.lang.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:
        OneWireContainer0B, utils.Address
    • Method Detail

      • getName

        public java.lang.String getName()
        Get the Maxim Integrated Products 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 java.lang.String getAlternateNames()
        Get 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'.
        Overrides:
        getAlternateNames in class OneWireContainer
        Returns:
        1-Wire device alternate names
      • getDescription

        public java.lang.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