----------------------------------------------------------- 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