5) 8051 DOCUMENTATION



5.1) Periodicals that cover the 8051


    Various magazines and journals (journals seems to be THE popular name
    for magazines these days) provide articles from time to time on the
    8051 family of microcontrollers:

    The Computer Applications Journal (Circuit Cellar Ink)
        - programming and construction articles
        - POB 7694, Riverton, NJ  08077-8784
        - FAX: (203)872-2204
        - Voice orders: (609)786-0409
        - On-line orders (BBS): (203)871-1988
        - Email orders: ken.davidson@circellar.com
        - $21.95, $31.95 surface Canada and Mexico,
          $49.95 air all other countries

    Computer Design
        - industry announcements and trends
        - One Technology Park Drive, P.O. Box 990, Westford, MA  01886
        - (508)692-0700

    The Computer Journal
        - programming and construction articles
        - P.O. Box 3900, Citrus Heights, CA 95611-3900
        - (800)424-8825 or (916) 722-4970   FAX: (916) 722-7480
        - BBS: (916) 722-5799
        - WWW: http://www.psyber.com/~tcj
        - Email: tcj@psyber.com
                 Dave Baldwin: dibald@netcom.com
                 Bill Kibler: kibler@psyber.com
        - USENET newsgroup alt.tcj

    Dr. Dobbs Journal
        - programming articles, concepts, and designs
        - 411 Borel Ave., San Mateo, CA  94402
        - (415)358-9500

    Electronic Engineering Times
        - industry announcements and trends
        - FREE to qualified engineers and managers involved in
          engineering decisions
        - Fulfillment Dept., PO Box 9055, Jericho, NY  11753-8955
        - FAX: (516)733-6960

    Electronics Now
        - construction articles
        - Box 55115, Boulder, CO  80321-5115
        - $19.97 one year

    Elektor Electronics
        - programming and construction articles
        - World Wide Subscription Service Ltd
          Unit 4, Gibbs Reed Farm, Pashley Road
          Ticehurst TN5 7HE, England
        - 27 UK pounds
     or
        - Old Colony Sound Lab, P.O. Box 243, Peterborough, NH 03458
        - Tel. (603)924-6371, 924-6526
        - Fax: (603)924-9467
        - $57 USA and Canada per year

    Embedded Systems Programming
        - programming and systems design articles
        - Miller Freeman Publications
        - 500 Howard St., San Francisco, CA  94105
        - Miller Freeman: (415)905-2200
        - Embedded Systems Programming phone: (800)829-5537

    Forth Dimensions
        - monthly magazine on Forth
        - Forth Interest Group, P.O. Box 2154, Oakland, California 94621
        - (510)893-6784   Fax: (510)535-1295
        - Email: johnhall@aol.com
        - Forth Interest Group home page:
             http://taygeta.oc.nps.navy.mil/fig_home.html

    Inquisitor Magazine
        - If you're the type that watched Gilligan's Island for its
          socio-political insights, then you'll love a new 'zine that
          just crossed my desk - Inquisitor Magazine.  It's general
          philosophy seems to be ... well, it seems to be ... uh, yeah!
          Technical in nature, bizarre, tongue in cheek, eclectic,
          electric, did I mention bizarre(?), and lots of fun.  Worth
          looking at if you like the out of the ordinary.  The moving
          force behind this magazine is Daniel Drennan, who seems to have
          suffered from an overdose of radiation from his computer
          monitor ;-).
        - Planetarium Station, P.O.Box 132, New York, NY  10024-0132
        - (212)595-8370
        - Email: inquisitor@echonyc.com
        - $16 per year (4 issues)

    Microcomputer Journal (formerly Computer Craft)
        - programming and construction articles
        - 76 N. Broadway, Hicksville, NY  11801
        - $29.70 one year

    Midnight Engineering
        - 1700 Washington Ave., Rocky Road, CO  81067
          (719)254-4558   Fax: (719)254-4517

    MW Media - Product Directories
        - 8051 Product Directory
          (survey of various 8051 products)
        - Intel Development Tools Handbook
          (survey of commercial development tools for the 8051, 8096,
          and 80186 lines of Intel microprocessors)
        - This documents could very well be a "must" if you're into
          serious development using one of these chips.  If you are
          "just" a hobbyist, see how the "other half" lives.
        - other guides on Intel development tools, Embedded Intel 386,
          Intel 486/Pentium, 8051 products, Hitachi microcontroller
          development tools, AMD FusionE86, AMD 29K; low power products,
          DSP, multimedia CD
        - FREE to qualified developers
        - MW Media
        - Fairmont Plaza, 50 W. San Fernando, #675, San Jose, CA  95113
        - (408)288-4721 and (408)286-4200
        - FAX: (408)288-4728

    Nuts & Volts Magazine
        - A National Publication for the Buying and Selling of
          Electronic Equipment
        - 430 Princeland Court, Corona, CA  91719
        - Mailed third class, USA only:  $17.00 one year
                                         $31.00 two years
        - Mailed first class, one year only:  $34.00-USA
                                              $35.00-Canada/Mexico
        - Foreign/Air Mail - $70.00;  Foreign/Surface - $39.00
        - (800)783-4624
        - Email:  74262.3664@compuserve.com


5.2) Books on the 8051


5.2.1) List of books


    I don't have information on all of these, only that they exist.  I
    would greatly appreciate it if someone could provide a short synopsis
    and the complete book name if you are familiar with any of these
    titles.

    The 8051 Family of Microcontrollers
        -Richard H. Barnett
        -Prentice-Hall, 1995
        -ISBN 0-02-306281-9

    8051 Interfacing and Applications
        - Applied Logic Engineering
        - 13008 93rd Place North, Maple Grove, MN  55369
        - (612)494-3704

    The 8051 Microcontroller
        - I. Scott MacKenzie
        - Prentice Hall
        - 2nd edition, 1995
        - ISBN 0-02-373660-7
        - includes schematics for a single-board computer,
          assembly-language source code for a monitor program, and
          interfaces to a keypad, LEDs, and loudspeaker

    The 8051 Microcontroller
        - James W. Stewart
        - Regents/Prentice-Hall, 1993
        - $27.50, 273 pages
        - includes many interfacing examples (switches, solenoids,
          relays, shaft encoders, displays, motors, and A/D converters)
          and a chapter on top-down design method

    The 8051 Microcontroller: Architecture, Programming and Applications
        - Kenneth J. Ayala
        - 241 pages, soft cover
        - 5.25" diskette with assembler and simulator
        - ISBN 0-314-77278-2, Dewey 004.165-dc20
        - West Publishing Company
        - P.O. Box 64526, St. Paul, MN  55164
        - (800)328-9352
        - see review in next section

    Assembly Language Programming (for the MCS-51 family)
        - F. A. Lyn
        - L. S. Electronic Systems Design

    Basic-52 Programmer's Guide
        - Systronix, Inc. (they also sell a Basic compiler)

    Beginner's Guide
        - Suncoast Technologies

    C and the 8051
        - Thomas W. Schultz
        - Prentice Hall
        - ISBN 0-13-753815-4

    Data book / Handbook / Users' Guide
        - Advanced Micro Devices
        - Dallas (User's guide for the DS5000)
        - Intel
        - Philips
        - Siemens

    Embedded Controller Forth for the 8051 Family
        - Academic Press (I think)
        - William H. Payne
        - uses a Forth development system available on the Internet
          (see above in the Forth software section)

    Embedded Systems Programming in C and Assembler
        - John Forrest Brown
        - Van Nostrand Reinhold, 1994
        - 304 pages, $49.95
        - ISBN 0-442-01817-7
        - covers Motorola and Intel processors
        - includes diskette with code from the book
        - book review in Dr. Dobb's Journal, November 1994, page 121

    Experimenter's guide
        - Rigel Corporation

    Introduction to Microcontroller Design, Based on the 8051 family of
    Processors
        - Business Data Computers
        - P.O. Box 1549, Chester, CA  96020

    The Microcontroller Idea Book
        - Jan Axelson (of Microcomputer Journal fame)
        - features the 8052-BASIC microcontroller
        - hands-on guide with complete plans (schematics, design theory,
          program listings, construction details, etc)
        - explains how to use sensors, relays, displays, clock/calendars,
          keypads, wireless links, and more
        - 1994, 273 pages, $31.95 + shipping
        - Lakeview Research, 2209 Winnebago St., Madison, WI  53704
          (608)241-5824  Internet: 71163.3555@compuserve.com
        - contact the author at janaxel@aol.com

    Programming and Interfacing the 8051 Microcontroller
        - Sencer Yeralan and Ashutosh Ahluwalia
        - wealth of information, including: 8051 architecture,
          programming basics and techniques, on-chip features, building
          your own 8051 system, and interfacing to various peripherals
        - hardware experiments contains plans and code for:  scanning a
          keypad, stepper motor control, a frequency generator, measuring
          light and temperature intensity (analog to digital), digital to
          analog conversion, DC motor speed regulation, interfacing to
          intelligent Liquid Crystal Displays, and implementing a
          multi-drop RS-485 network
        - accompanying diskette has an 8051 simulator and all source code
          for the projects in the book
        - must have book for the hobbyist or professional
        - $34.38, 352 pages, paperback, ISBN 0-201-63365-5
        - Addison-Wesley


5.2.2) Book reviews


    My review of the book:
    Programming and Interfacing the 8051 Microcontroller
    by Sencer Yeralan and Ashutosh Ahluwalia

       Addison-Wesley has just released a GREAT new book, "Programming
       and Interfacing the 8051 Microcontroller" by Sencer Yeralan and
       Ashutosh Ahluwalia.  I had actually reviewed the manuscript some
       time back, and the book has now finally been released.  This book
       contains a wealth of information - it answers a lot of Frequently
       Asked Questions that often appear in comp.robotics,
       sci.electronics, and comp.arch.embedded.

       Among the some of the basic subjects covered include: 8051
       architecture, programming basics and techniques, on-chip features,
       building your own 8051 system, and interfacing to various
       peripherals.  A section on hardware experiments contains plans and
       code for:  scanning a keypad, stepper motor control, a frequency
       generator, measuring light and temperature intensity (analog to
       digital), digital to analog conversion, DC motor speed regulation,
       interfacing to intelligent Liquid Crystal Displays, and
       implementing a multi-drop RS-485 network.

       The book comes with a diskette containing an 8051 simulator and
       all source code for the projects in the book.  This is a must have
       book for the hobbyist or professional.  Available for $34.38, 352
       pages, paperback, ISBN 0-201-63365-5.  Run, don't walk, to your
       bookstore and get one now.  I mean it, this is a great book.


    My review of the book:
    The Microcontroller Idea Book
    by Jan Axelson

       This book is loosely based on a series of articles Jan wrote for
       ComputerCraft magazine (now the Microcomputer Journal).  If you
       are at all familiar with her work, you already realize that you're
       wasting your time by reading this review and you might as well
       just order your copy now.

       This is an excellent book for hobbyists and tinkerers, as it
       includes complete circuit schematics and parts lists, design
       theory, example program listings, construction and debugging tips,
       and vendor listings.  The example circuits and programs are based
       on the 8052-BASIC chip (a favorite with hobbyists due to its ease
       of use), and there is a lot of material on programming in BASIC52.
       The book is [very] useful even if you use a standard 8051 part.
       Lots of different interfacing ideas including: sensors, motors,
       LEDs, LCDs, wireless links, and a LOT more.

       Chapter titles:  microcontroller basics, inside the 8052-
       BASIC, powering up, saving programs, programming, inputs and
       outputs, switches and keypads, displays, using sensors to
       detect and measure, clocks and calendars, control circuits,
       wireless links, calling assembly-language routines, running
       BASIC-52 from external memory, related products

       If you are just starting out with microcontrollers, and don't have
       a clue where to start or what to control, this book is just what
       you need.  As the title of the book says, it's an idea book.

            The Microcontroller Idea Book
            Jan Axelson
            1994, 273 pages, $31.95 + shipping
            Lakeview Research, 2209 Winnebago St., Madison, WI  53704
               (608)241-5824
               Email: janaxel@alo.com  or  71163.3555@compuserve.com


    My review of the book:
    The 8051 Family of Microcontrollers
    by Richard H. Barnett

       This book VERY thoroughly discusses the design and implementation
       of controllers using the 8051.  Dick says his book is "lots of
       meat, very little filler", but he's a bit off the mark here.  What
       he means to say is this book is many large chunks of meat, no
       vegetables, and no potatoes - we are NOT talking Hamburger Helper
       here gang.  The introduction alone contains circuits for 3
       controllers (one 8085 design used as a comparison).  Many hardware
       and softare examples are included.  Everywhere you turn in this
       book, you'll find circuit diagrams and sample code, including
       complete designs for three different microcontroller projects in
       the last chapter.  Clear and in-depth coverage of interfacing and
       peripheral use leaves very little to the imagination.

       This is a good book for both students and professionals who are
       trying to figure out how to start designing there own
       microcontroller.  Experienced hobbyists will also appreciate the
       many examples.  Novices might be a bit overwhelmed by this book.

            The 8051 Family of Microcontrollers
            Richard H. Barnett
            Prentice-Hall, 1995
            ISBN 0-02-306281-9

       For more info contact the author - barnettr@mace.cc.purdue.edu


    Richard Kendrick's review of the book:
    8051 Interfacing and Applications
    from Applied Logic Engineering

       IN BRIEF

       An excellent collection of interfacing circuits and well commented
       source code in assembly.  This is not a book for beginners as it
       assumes the user is very familiar with the architecture of the
       8051 and its registers.  A disk of assembly source code listings
       is included.

       CHAPTERS

             1    - 8051 Interfacing and Applications
             1.1  - Introduction
             1.2  - Main System Core
             1.3  - Simple Methods of User Input
             1.4  - Interfacing a 16 digit keypad to the 8031
             1.5  - Centronics Parallel Input Port
             1.6  - Centronics Parallel Output Port
             1.7  - Interfacing to the built-in Serial Port
             1.8  - Interfacing to a Dual Channel UART
             1.9  - Interfacing to an LCD
             1.10 - Bank Selection of Memory
                  - Appendix A: List of Vendors
                  - Appendix B: Connection to an External Computer
                     0.1 RS-232 Serial Connection
                     0.2 Centronics Interface Cabling

       COMMENTS

       This spiral bound book is thin (74 pages) but manages to cover a
       lot of information.  All of the sub-chapters have excellent code
       listings with full comments, partial schematic diagrams, and an
       occasional timing diagram.  The chapter on using the serial port
       is based on the MAX232 chip becoming so popular.  A table of timer
       reload values is provided to get standard baud rates but the book
       only mentions the required clock frequency of 11.0592 mHz in the
       first chapter.  It also doesn't explain why a seemingly
       non-standard crystal frequency was chosen.  The dual UART channel
       features the 2681 chip.  The LCD chapter gives a small but
       adequate explaination of the Hitachi controller chip usage on LCD
       displays and a tiny fragment of data on display characteristics of
       LCDs.  The bank selection of memory is useful showing code and
       schematic using five 62256 chips for 160K bytes of read/write
       memory.



    Richard Kendrick's review of the book:
    Microprocessor/Controller Design
    by Wayne P. Lichti of Business Data Computers

       A lame little book better bypassed.  As an introductory text,
       Kenneth Ayala's book is the winner hands down.  This book is a
       poor rehash of the same information in Intel's or AMD's data book.
       There is one code listing in the book and does little more than
       tell the reader that the 8051 family of processors exist.

       This book is 134 pages of wasted time.  The schematics were
       printed on a dot matrix printer and poorly reproduced.  Many of
       the sections are just a table or a paragraph with two or three
       sentences.  Use Ayala's book, you'll learn a lot more useful
       information.


    John Little's review of the book:
    The 8051 Microcontroller: Architecture, Programming and Applications
    by Kenneth J. Ayala

       IN BRIEF

       A good book for those who are already moderately familiar with
       assembly language programming and wish to learn more about 8051
       specifics.  Has many example listings, all of which are very well
       documented in terms of comments and explanations in the text. NOT
       a book for absolute beginners OR hardware hackers looking for
       circuits and applications.


       CHAPTERS

          1 - Microprocessors and Microcontrollers.
          2 - The 8051 Architecture.
          3 - Moving Data.
          4 - Logical Operations.
          5 - Arithmetic Operations.
          6 - Jump and Call Opcodes.
          7 - An 8051 Microcontroller Design.
          8 - Applications.
          9 - Serial Data Communication.
          A - 8051 Operational Code Mnemonics.
          B - How to Use the Assembler.
          C - how to Use the Simulator.
          D - The 8255 Programmable I/O Port.
          E - Control Registers.


       COMMENTS

       In his preface to the book, Mr Ayala states that that it is
       intended for "... a diverse audience. It is meant for use
       primarily by those who work in the area of electronic design and
       assembly language programming of small, dedicated computers".
       Later, he goes on to refer the reader to the manufacturer's data
       books for more information on hardware issues. This sets the tone
       for the whole book, which is very much software orientated.

       Anyone buying the book expecting to find reams of circuit diagrams
       and details on how to build their own 8051 driven, automated car
       assembly plant will be disappointed. In fact, most of the circuits
       and applications shown are very much conceptual, with generic,
       black-box outlines for most of the components. The single
       exception to this is a fairly complete system (8031, EPROM & RAM,
       jumper selectable memory sizes) in the chapter on microcontroller
       design.  Even then, there's no I/O shown (the txd/rxd are
       unconnected).

       Having said that, Mr Ayala does do a fairly thorough job of
       working through the peculiarities of the 8051, with detailed
       coverage of memory organisation, bit/byte level operations,
       timers, interrupts and, at the end of the book, a complete chapter
       on 8051 communication modes. Each area has relevant assembly
       language listings, along with a detailed explanation of the
       workings of the code.

       Each section also has highlighted "comment" passages which point
       out common pitfalls and reinforce critical points. Each chapter
       ends with a summary of the important points covered and a series
       of ten to twenty pertinent problems for the reader to solve. For
       the most part, the answers to the problems can be found in the
       text.  In later chapters though, the reader is asked to elaborate
       on various programming themes and to write assembly language
       programs of their own to perform various tasks. The problems range
       from the bland "Name twenty items which have a built in
       microcontroller" (Chapter 1), to the more esoteric "Compose a
       40-value lookup table that will generate a sawtooth wave using a
       D/A converter" (Chapter 8).

       It should be noted that the book is not aimed at the complete
       novice. For instance, although assembly language listings are used
       throughout, it is not until Appendix B that the reader finds out
       what the assembler actually does and how the listings relate to
       machine code. Even then, the complete neophyte will be left with a
       rather empty feeling, as there are pages and pages of code, the
       schematic for a (more or less) complete system and instructions on
       how to use the assembler, but no information at all on how the
       object code should be utilised (other than with the included
       simulator - see below). If you don't already know how to blow an
       EPROM, you're in trouble.

       The diskette which accompanies the book contains the PseudoSam
       assembler (which is used throughout) and an 8051 simulator. Both
       being intended for use on a PC (it's a measure of how fast the
       computer industry is evolving that a 5.25 inch diskette seems a
       little archaic just three years after the publication date of the
       book).  The PseudoSam assembler ran fine on my system and I was
       able to assemble several of the examples from the book and
       successfully run them on a small, home-brew 8031 system. I was
       totally unable to get the simulator to run. However, as it failed
       on several different systems I'm prepared to believe that my
       particular copy of the diskette was at fault.


       SUMMARY

       All in all, a recommended book for those who have previous
       assembly language experience and wish to get to know details
       relating to the 8051 microcontroller. While the internal
       architecture of the chip is covered in detail, external hardware
       and peripheral interfacing is not.  Only the basic 8051/31 is
       covered, with little mention of the other variants available.
       There are extensive listings in the text, covering routines for
       handling keyboards and displays, as well as timing loops and
       communications. A large, clear typeface ensures that all of the
       listings are completely legible. The layout and presentation of
       the book is excellent, with a consistent, unambiguous style used
       throughout.


    Tim McDonough's review of the book:
    C and the 8051: Programming for Multitasking
    by Thomas W. Schultz

       Schultz's book provides a brief overview of the 8051 architecture
       but is primarily a discussion of multi-tasking software in an 8051
       environment.  He presents quite a few code examples.  The examples
       and the accompanying text show comparisons of how to accomplish
       things in assembler, PLM, and C.  The C examples presented are
       based on Version 3 of the Franklin compiler but should be easily
       understandable by anyone already familiar with C.

       Later chapters in the book deal with more advanced topics.
       Chapters are devoted to Real-Time Ideas, Timing and Scheduling,
       Communications and Synchronization, Interrupts, Priority, and
       Context, and Distributed Systems.  The Real-Time Ideas chapter
       briefly discusses six Real Time Operating System (RTOS) kernels
       offered by several vendors.  Later in the book some examples are
       given to simple applications with and without using a RTOS.

       All in all, a useful addition to my technical library.  It is one
       of the few 8051 books that goes beyond the basics and would be
       particularly of interest to those contemplating their first
       non-trivial 8051 design.


5.3) Miscellaneous documentation on the 8051


    Advanced Micro Devices
        - application notes

    Intel Corporation
        - application notes

    L.S. Electronic Systems Design
        - application notes (source code on diskette and schematics)

    Philips Semiconductors (Signetics)
        - application notes

    Software Science
        - application notes