下载
![](https://oss-datasheet.aipcba.com/html/BCF68B2C0CA4F5115F33012D7F9CC171/bg1.png)
Maxim > Design Support > Technical Documents > Application Notes > 1-Wire® Devices > APP 155
Maxim > Design Support > Technical Documents > Application Notes > i
Button® > APP 155
Maxim > Design Support > Technical Documents > Application Notes > Microcontrollers > APP 155
Keywords: 1-Wire, OneWire, iButton, API, application program interface, software, examples, TMEX, java,
OWAPI, public domain, PD, windows COM, OWCOM, OW.NET, .NET, dotnet
APPLICATION NOTE 155
1-Wire® Software Resource Guide Device Description
Jul 08, 2008
Abstract:
There
are over 30 different 1-Wire devices, including i
Button® devices, that Maxim currently
produces. Navigating the available APIs, software examples, and other resources to communicate with this
array of devices or finding the correct resource for a single device type can be a daunting task. This
document provides an overview of the available resources and a selection guide. The current 1-Wire devices
are also presented in a convenient table, providing device descriptions and family code lookup.
Available APIs include TMEX (an API for Microsoft Windows®), 1-Wire Public Domain Kit (a cross-platform
API), the 1-Wire API for Java™ (OWAPI) and its variant 1-Wire API for .NET (OW.NET), and 1-Wire API for
.NET Compact (OW.NET.Compact). All of the APIs described in this document are free to use without
restriction and, in most cases, include the complete source code.
Introduction
There are over 30 different 1-Wire devices, including iButton devices, that Maxim currently produces.
Navigating the available application program interfaces (APIs), software examples, and other resources to
communicate with this array of devices, or finding the correct resource for a single device type, can be a
daunting task. This guide provides an overview of available resources and a selection guide. The APIs
described in this document are free to use without restriction and, in most cases, include the complete
source code.
1-Wire Overview
The 1-Wire bus is a simple signaling scheme that performs two-way communications between a single
master and peripheral devices over a single connection. A powerful feature that all 1-Wire bus devices share
is that each and every device, in a chip or an i
Button, has a factory-programmed registration number that will
never be repeated in any other device. In effect, every device is unique. This allows any single device to be
individually selected from among the many that can be connected to the same bus wire. Because one, two, or
even dozens of 1-Wire devices can share a single wire for communications, a binary searching algorithm is
used to find each device in turn. Once each device registration number is known, any device can be uniquely
selected for communication using that registration number to address it.
The first part of any communication involves the bus master issuing a reset, which synchronizes the entire
bus. A slave device is then selected for subsequent communications. This can be done by selecting all
slaves, selecting a specific slave (using the registration number of the device), or by discovering the next
slave on the bus using a binary search algorithm. These commands are referred to collectively as network
function or read-only-memory (ROM) commands. Once a specific device has been selected, all other devices
drop out and ignore subsequent communications until the next reset is issued.
Page 1 of 27