-----------------------------------------------------------
              Public Domain MicroLAN functions 

                       Version 1.03
                        06/08/1999
  
          Copyright (C) 1999 Dallas Semiconductor
-----------------------------------------------------------

The MicroLAN functions provided are written in 'C' and are
intended to be used on platforms not supported by the
iButton-TMEX MicroLAN drivers.  The MicroLAN, also called
the '1-Wire Net' is a one wire and ground network with 
one master and one or more slave devices.  

This source code creates a 1-Wire Net master that can be 
used to identify and communicate with slave devices.  It 
provides all of the 1-Wire Net network, and some of the 
transport and file level services to communicate with all 
of Dallas Semiconductor's 1-Wire devices including iButtons.

This source code is designed to be portable.  There are
provided 'TODO' templates to be completed for a specific
platform.  Several platform example implementations have  
provided.  There are also several example applications 
that use these platform implementations.

There are two sets of portable source files.  The first set 
is general purpose and is intended for platforms that
already have the primitive link-level MicroLAN (1-Wire Net)
communication functions.  This is the lowest level that
is hardware dependent.  

The other set of portable source files assumes that the
user has a serial port (RS232) and wishes to utilize
our 'Universal Serial 1-Wire Line Driver Master chip' called
the DS2480.  This chip recieves commands over the serial
port, performs 1-Wire Net operations and then sends the
results back to the serial port.  The source code converts
the intended 1-Wire operations into serial communications
packets to the DS2480.  The only thing that needs to be
provided for a platform are the serial port read/write
primitives.   

These two sets of portable source code files implement
the same 1-Wire Net functions and are interchangeable.


CONTENTS:

source 
   lib (MicroLAN library code sets)
      userial  - Code set based on Universial Serial chip (DS2480)
      general  - Code set based on 1-Wire link-level functions

   apps (application examples)
      thermo   - DS1921 Thermochron download and mission 
                 example application
      mweather - 1-Wire Weather Station example
      tstfind  - Loop to find all 1-Wire devices on Net
      tstmlan  - Test to exercise all non-EPROM API
      tstmlane - Test to exercise EPROM programming

examples (example implemenations on platforms)
   linux  - Linux implementation using 'userial' code set
   win32  - Windows 32-Bit implementation using 'userial' code set
   tmex32 - Windows 32-bit implementation using 'general' code set and
            iButton-TMEX 32-bit as the 1-Wire link-level functions. 
   macOS  - MacOS implemenation using 'userial' code set (needs work)

doc (documentation)
   mlan_api.txt - description of MicroLAN (1-Wire) API functions 
   userial.txt  - how to port 'userial' code set to new platform
   general.txt  - how to port 'general' code set to new platform

readme.txt  - this file
license.txt - 'public domain' source code license 
              (based on X Consortium's/ MIT license)
              http://www.opensource.org/mit-license.html


INFORMATION:

The best source of information about 1-Wire devices including
iButtons is Dallas Semiconductor's iButton web site at:
   http://www.ibutton.com/

This file has the latest download listings:
   ftp://ftp.dalsemi.com/pub/auto_id/softdev/softdev.html

Dallas Semiconductor's main web site:
   http://www.dalsemi.com/
Data sheets:
   http://www.dalsemi.com/DocControl/PDFs/pdfindex.html


KIT HISTORY:

1.01 -> 1.02  Support multiple DS1820 temperature devices in MWeather
                example.
              Change MLANU(userial) section to implement opening and closing
                of communication port with generic functions.
              Fix incorrect declarations of global variables in MLANU(userial).
              Fix reading incorrect counter page in MWeather example.
              Extended DSO of MLANU(userial) adapter. 

1.02 -> 1.03  Reorganization of files/directories
              Make applications not library dependent (userial/general)
              Add Linux support
