home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / FAQSYS18.ZIP / FAQS.DAT / 8051.FAQ < prev    next >
Internet Message Format  |  1995-12-12  |  98KB

  1. Path: senator-bedfellow.mit.edu!faqserv
  2. From: sibit@datasrv.co.il (Russ Hersch)
  3. Newsgroups: comp.sys.intel,comp.robotics,comp.realtime,comp.lang.forth,sci.electronics,comp.answers,sci.answers,news.answers
  4.  
  5. Subject: 8051 microcontroller FAQ
  6. Supersedes: <microcontroller-faq/8051_793809409@rtfm.mit.edu>
  7. Followup-To: poster
  8. Date: 30 Mar 1995 22:41:24 GMT
  9. Organization: none
  10. Lines: 2382
  11. Approved: news-answers-request@MIT.EDU
  12. Expires: 14 May 1995 22:39:04 GMT
  13. Message-ID: <microcontroller-faq/8051_796603144@rtfm.mit.edu>
  14. NNTP-Posting-Host: bloom-picayune.mit.edu
  15. Summary: This article is a collection of information sources on the
  16.          Intel 8051 family of microcontrollers (and variants).
  17. X-Last-Updated: 1995/03/30
  18. Originator: faqserv@bloom-picayune.MIT.EDU
  19. Xref: senator-bedfellow.mit.edu comp.sys.intel:42592 comp.robotics:19276 comp.realtime:9264 comp.lang.forth:20843 sci.electronics:125293 comp.answers:10945 sci.answers:2390 news.answers:41002
  20.  
  21. Archive-name: microcontroller-faq/8051
  22. Posting-Frequency: monthly
  23. Last-modified: Mar. 30, 1995
  24.  
  25. This article is a collection of information sources on the Intel 8051
  26. family of microcontrollers (and variants).
  27.  
  28. The following topics are addressed:
  29.  
  30.       0)  Rantings and ravings (to make the FAQ zero-based)
  31.  
  32.       1)  ABOUT THIS FAQ
  33.     1.1)  Who put this FAQ together?
  34.     1.2)  How can I contribute to this FAQ?
  35.     1.3)  What newsgroups will this FAQ be posted to?
  36.     1.4)  May I distribute this FAQ or post it somewhere else?
  37.     1.5)  How about FAQs on other microcontrollers?
  38.  
  39.       2)  ABOUT THE 8051
  40.     2.1)  The 8051 microcontroller
  41.     2.2)  8051 Flavors
  42.     2.3)  8051 representatives and approximate prices
  43.     2.4)  Advantages realized in implementing control applications on
  44.           this family of microcontrollers
  45.  
  46.       3)  SOURCES OF INFORMATION ON THE 8051
  47.     3.1)  FTP sites
  48.     3.2)  BBSs
  49.     3.3)  Help available!
  50.  
  51.       4)  8051 PRODUCTS
  52.     4.1)  Free languages and development tools
  53.     4.2)  Free C compilers
  54.     4.3)  Commercially available products
  55.  
  56.       5)  8051 DOCUMENTATION
  57.     5.1)  Periodicals
  58.     5.2)  Books
  59.     5.3)  Miscellaneous documentation
  60.  
  61.  
  62. 0)  Rantings and ravings
  63.  
  64.     Disclaimer:  Just so it is understood, the "rantings and ravings" are
  65.     my rantings and raving.  My readers are refined and sophisticated and
  66.     would never rant or rave.  I, on the other hand, sit in front of the
  67.     TV in torn underwear and drink beer out of the bottle.
  68.  
  69.  
  70.     This is the one year anniversary edition of this FAQ.  I just happen
  71.     to run across my original file in a forgotten corner of my hard disk
  72.     and I noticed it had a March date on it.  Hard to believe, but it was
  73.     only 5K!
  74.  
  75.     My sincerest apologies to anyone that wrote to me, and didn't get a
  76.     reply.  I was inundated this time, and I'm afraid that I wasn't too
  77.     careful in keeping track of my email.  Also, some of those I did
  78.     respond to didn't hear from me because their email addresses were
  79.     invalid (or, at least my system thinks so).  So, if you feel
  80.     neglected, or you submitted some information that didn't make it into
  81.     this month's update, please drop me a note and let me know.  A
  82.     thousand pardons!
  83.  
  84.     Well, the verdict is in.  No, I'm not talking about OJ - I'm talking
  85.     about one-part FAQs versus multi-part.  The response has been nearly
  86.     unanimous to keep the FAQs in one piece.  So, one piece it is.
  87.  
  88.     Thanks to Hans Schou <chlor@biocat.ruc.dk> who is adding his name to
  89.     the "help available" list.  Although not an expert, he has experience
  90.     with the Standard Microsystems Corp COM20051 integrated
  91.     microcontroller and network interface.
  92.  
  93.  
  94.     Philips Semiconductor / CEIBO DS750 Devolopment Tools
  95.  
  96.        A good way to learn about 8051 programming, this kit is based on
  97.        the 8xc7xx series which are very low-end, inexpensive micros.
  98.        They are offered with less memory (1k, 2k, etc.) and fewer
  99.        features.  In fact the 83c750 sells for only $1 in very high OEM
  100.        volumes.
  101.  
  102.        The kit includes a DS750 board, source level debugger, and
  103.        utilities.  Both DOS and Windows versions of the software are
  104.        included on the diskette, and installation is a snap.  I don't
  105.        understand why, but no assembler is included!  A number of
  106.        assemblers and C compilers are compatible with (or adaptable to)
  107.        the source level debugger, including:  Keil/Franklin, IAR, and
  108.        Micro Computer Control.  If you're on a budget, the Micro Computer
  109.        Control package is only $100 - the prices of the other packages
  110.        are a bit more creative :-).  Philips also has the MetaLink
  111.        assembler available for free on their BBS.
  112.  
  113.        Besides being a very nice platform for testing your code
  114.        real-time, the enclosed manual makes this package really
  115.        worthwhile.  In addition to the obligatory startup and operation
  116.        information, the book includes schematics and theory of the
  117.        board's operation.  Five experiments guide the user on
  118.        understanding the workings and capabilities of the 8051 family.
  119.  
  120.        Priced at only $100, a truckload of these have already been sold,
  121.        and for good reason.  If you're interested in learning how to use
  122.        an 8051, you can't go wrong by buying this kit.
  123.  
  124.  
  125.     Thanks to Carl Giles for the following information.  He fills us in
  126.     on a chip that can make almost any 8051 variant do what the Dallas
  127.     DS5000 does:
  128.  
  129.        Xicor has some interesting chips that wire up directly to an 8051
  130.        (they have similar chips for the 68HC11 flavor.)  They need no
  131.        glue logic, and they contain:
  132.                8K x 8 EEPROM in individual 4K segments
  133.                2 8-BIT I/O ports
  134.                16 8-BIT RAM registers
  135.                Integrated Interrupt Controller Module
  136.                Internal programmable address decoding
  137.  
  138.        Code loaded at the factory that will allow users to download
  139.        programs into EEPROM (one 4K segment can be written to while the
  140.        processor executes out of the other 4K segment), and test the
  141.        program, rewrite, and retest until development is finished.
  142.  
  143.                                     2
  144.        These are referred to as SLIC E  Microperipherals.  If you program
  145.        the SLIC for a different address, multiple SLICs may be gluelessly
  146.        wired to a single 8031, 32, 51, 52.  One of the ports can be
  147.        programmed to latch out the lower address bits so that standard
  148.        byte-wide peripherals may be used without further decoding!  These
  149.        are neat chips!  Xicor sells a Development Support package that
  150.        includes a DATA BOOK, a SAMPLE of
  151.        the CHIP (PDIP or PLCC, your choice) and PC compatible software
  152.        for downloading and testing your programs.  The development
  153.        package is $15 from Xicor in Milpitas CA.  The development system
  154.        is a lot more, $180 for the populated board.
  155.  
  156.        I got in touch with some distributors, to get small QTY. pricing,
  157.        and there wasn't any.  If you ordered at least 40 parts, they
  158.        could get them for around $12.50.  I think I would just get extra
  159.        kits ($15 @ QTY. 1) and bypass the distributors at that price.
  160.  
  161.        The SLIC with the ports comes in a 48 pin PDIP or a 44 pin PLCC.
  162.        Xicor also offers a memory only solution (which should be cheaper)
  163.        in a 24 pin PDIP, but the SLIC EEPROM Development Support package
  164.        doesn't come with the portless 24 pin chip.
  165.  
  166.  
  167.     Take care,
  168.  
  169.               Uncle Russ
  170.  
  171.  
  172. 1)  ABOUT THIS FAQ
  173.  
  174. 1.1)  Who put this FAQ together?
  175.  
  176.     I was prompted to put this FAQ together in response to my own
  177.     frustration in searching for information, and to the constant
  178.     occurrence of requests for information on this subject in various
  179.     newsgroups.  Hopefully others won't need to go through what I did.
  180.  
  181.     Normally, I spend all day programming in assembler on an IBM PC.
  182.     With my hobbyist hat on I decided to try my hand at a little
  183.     microcontroller project design.  When it came time to start, I had no
  184.     idea what to do.  I had nothing to start with - no assembler, no
  185.     programming language, no simulator.  I cobbled together a simulator
  186.     to help me learn about the workings of the chip.  It's not being made
  187.     available to the public since I'm afraid the simulator isn't very
  188.     good.  It was for my own use, so the user interface (there is none)
  189.     really sucks eggs.
  190.  
  191.     I decided to search the net for information on the 8051.  This list
  192.     was compiled the hard way, logging onto every anonymous ftp site I
  193.     could find and looking around.  I also used Archie, other FAQs and
  194.     lists, and every reference to the 8051 that appeared in the various
  195.     news groups.  It took a long time till stuff finally started popping
  196.     up.  I saved all of my notes and the result was the first version of
  197.     this FAQ.  Responses have been poured in, and the result is a much
  198.     more complete and thorough FAQ.
  199.  
  200.  
  201. 1.2)  How can I contribute to this list?
  202.  
  203.     I please ask that if you have any suggestions or additions, or you
  204.     would like to correct any of the information contained herein, please
  205.     send me a note.
  206.          My Email address is:  sibit@datasrv.co.il
  207.          My Snail-Mail address is:
  208.                Russ Hersch
  209.                HaVradim 11
  210.                Ginot Shomron
  211.                ISRAEL
  212.  
  213.     The list of individuals who have sent suggestions and encouragement
  214.     has finally overflowed.  I hope it suffices to say "Thank you to all
  215.     who have contributed to this FAQ - we all appreciate it."
  216.  
  217.     Special thanks to:
  218.             Carl Wall
  219.             Dave Dunfield (Dunfield Development Systems)
  220.             Olaf Pfeiffer (Hitex)
  221.             Dave Heller
  222.             Kevin Gardner (Philips Semiconductor)
  223.             Victor Weiman (CEIBO)
  224.             Clyde Smith-Stubbs (Hi-Tech Software)
  225.             Bo Frederiksen
  226.             Hans Schou
  227.             Ahmad Ibrahim
  228.             Carl Giles
  229.             Ken Tindall (IAR)
  230.  
  231.  
  232.     I hope that those of you who know of interesting items for the 8051
  233.     will share with everyone by contributing to this list.  A good amount
  234.     of stuff is turning up thanks to everyone's help.
  235.  
  236.     If you are a manufacturer and have an anonymous ftp site or BBS
  237.     available that supports the 8051, please let me know by EMail so that
  238.     I can add it to this FAQ.  Also, please feel free to update me on new
  239.     products.
  240.  
  241.  
  242. 1.3)  What newsgroups will this FAQ be posted to?
  243.  
  244.     This FAQ will be posted to the following newsgroups:
  245.           comp.sys.intel
  246.           comp.realtime
  247.           comp.robotics
  248.           comp.lang.forth
  249.           sci.electronics
  250.     These newsgroups often contain discussions, announcements, or
  251.     information on the 8051.  Check them out from time to time.
  252.  
  253.     The schedule for posting will be once a month.  I can't promise that
  254.     it will be on time, but I hope to post it on the 26th of each month.
  255.  
  256.     You might also want to check out the following newsgroups, since they
  257.     occasionally have items of interest for you 8051 fans.
  258.           comp.lang.misc
  259.           alt.comp.hardware.homebuilt
  260.  
  261.     A bit farther afield, but still of possible interest:
  262.           comp.ai.fuzzy
  263.           comp.dsp
  264.           sci.engr.control
  265.           sci.engr.semiconductors
  266.  
  267.  
  268. 1.4)  May I post this FAQ to my local BBS?
  269.  
  270.     I am putting no restrictions on the use of this FAQ except - It must
  271.     be distributed in its entirety with the copyright notice, and no
  272.     financial gain may be realized from it.  After all, I have spent, and
  273.     continue to spend, a lot of time on this.  The only thing that I
  274.     intend to gain from it is more information on the 8051, and getting
  275.     to know my fellow 8051 groupies better.
  276.  
  277.     For this reason I have appended a copyright statement to the end of
  278.     this FAQ.  I feel pretty silly doing this, but I just want to protect
  279.     myself.  The copyright does not limit the use of this list for
  280.     noncommercial purposes.  I hereby give my permission to one and all
  281.     to pass this list around and post it wherever you want - as long as
  282.     it is not for financial gain.
  283.  
  284.         Thank you.
  285.  
  286.  
  287. 1.5)  How about FAQs on other microcontrollers?
  288.  
  289.     If anyone wishes to start a FAQ on another microcontroller, please
  290.     feel free to copy the format of this FAQ - I don't intend on
  291.     copyrighting the look and feel ;-).  With a common format, we will
  292.     all benefit when trying to find information on a particular
  293.     microcontroller.
  294.  
  295.  
  296.     Other Microcontroller FAQs
  297.  
  298.       Subject:  PIC microcontrollers
  299.       Newsgroups:  comp.realtime
  300.                    comp.robotics
  301.                    sci.electronics
  302.       Maintainer:  Tom Kellett
  303.                    Tom@takdsign.demon.co.uk
  304.  
  305.       Subject:  68hc11 microcontrollers
  306.       Newsgroups:  comp.realtime
  307.                    comp.robotics
  308.                    sci.electronics
  309.       Archive:  rtfm.mit.edu :  <plus all mirror sites>
  310.                 /pub/usenet/comp.answers/microcontroller-faq/68hc11
  311.                 /pub/usenet/sci.answers/microcontroller-faq/68hc11
  312.                 /pub/usenet/news.answers/microcontroller-faq/68hc11
  313.       Maintainer:  Russ Hersch
  314.                    Email:  sibit@datasrv.co.il
  315.  
  316.       Subject:  Microcontroller primer and FAQ
  317.       Newsgroups:  comp.sys.intel
  318.                    comp.realtime
  319.                    comp.robotics
  320.                    sci.electronics
  321.                    alt.comp.hardware.homebuilt
  322.       Archive:  rtfm.mit.edu :  <plus all mirror sites>
  323.                 /pub/usenet/comp.answers/microcontroller-faq/primer
  324.                 /pub/usenet/sci.answers/microcontroller-faq/primer
  325.                 /pub/usenet/news.answers/microcontroller-faq/primer
  326.       Maintainer:  Russ Hersch
  327.                    Email:  sibit@datasrv.co.il
  328.  
  329.  
  330.     Additional FAQs of interest
  331.  
  332.       Subject:  Robotics
  333.       Newsgroups:  comp.robotics
  334.       Maintainer:  Kevin Dowling
  335.                    (412)268-8830
  336.                    Email:  nivek@ri.cmu.edu
  337.                    Smail:  Carnegie Mellon University
  338.                            The Robotics Institute
  339.                            Pittsburgh, PA 15213
  340.  
  341.       Subject:  Electronics
  342.       Newsgroups:  sci.electronics
  343.       Comments:  There are a number of FAQs available in this newsgroup
  344.                  on various subjects.  Among some of the subjects covered
  345.                  are:  LCDs, stepper motors, etc.
  346.  
  347.       FAQ subject:  Real-time
  348.       Newsgroups:  comp.realtime, comp.answers, news.answers
  349.       Archive:  rtfm.mit.edu : pub/usenet/comp.realtime
  350.       Maintainer:  Mark Linimon
  351.                        Lonesome Dove Computing Services
  352.                        Roanoke, Virginia
  353.                    Email:  linimon@nominil.lonesome.com.
  354.  
  355.       Subject:  Motorola 68K microprocessor line
  356.       Newsgroups:  comp.sys.m68k
  357.       Archive:  bode.ee.ualberta.ca : pub/motorola/general
  358.                 ftp.luth.se : /pub/misc/motorola/faq
  359.                 file name of archive is m68kfaq?.zip (? is version)
  360.       Maintainer:  Robert Boys - Ontario, Canada
  361.                    Email: r.boys@genie.geis.com
  362.                                  or
  363.                           fboys@uoguelph.ca
  364.  
  365.  
  366.     For more detailed information on various 8051 microcontroller parts,
  367.     see the article posted to comp.robotics and sci.electronics which
  368.     provides a tabular cross reference of features and pin counts on a
  369.     wide range of microcontrollers (including the 8051 family).  This
  370.     list was compiled and is being maintained by Roger Nelson
  371.     <rnelson@wsuaix.csc.wsu.edu>.
  372.  
  373.     For more information on various microcontrollers and their features,
  374.     refer to the Microcontroller primer and FAQ listed above.
  375.  
  376.  
  377. 2)  ABOUT THE 8051
  378.  
  379.  
  380. 2.1)  The 8051 microcontroller
  381.  
  382.     The 8051 is an 8 bit microcontroller originally developed by Intel in
  383.     1980.  It is the world's most popular microcontroller core, made by
  384.     many independent manufacturers (truly multi-sourced).  There were 126
  385.     million 8051s (and variants) shipped in 1993!!
  386.  
  387.     A typical 8051 contains:
  388.        - CPU with boolean processor
  389.        - 5 or 6 interrupts: 2 are external
  390.                             2 priority levels
  391.        - 2 or 3 16-bit timer/counters
  392.        - programmable full-duplex serial port
  393.          (baud rate provided by one of the timers)
  394.        - 32 I/O lines (four 8-bit ports)
  395.        - RAM
  396.        - ROM/EPROM in some models
  397.  
  398.     The 8051 architecture is a tad bizarre, but then so are the
  399.     architectures of most microcontrollers due to their specialization
  400.     (check out the PIC for creativity).  One vexing problem with the 8051
  401.     is its very non-orthogonal instruction set - especially the
  402.     restrictions on accessing the different address spaces.  However,
  403.     after some time programming the chip, you can get used to it - maybe
  404.     even appreciate it.
  405.  
  406.     One strong point of the 8051 is the way it handles interrupts.
  407.     Vectoring to fixed 8-byte areas is convenient and efficient.  Most
  408.     interrupt routines are very short (or at least they should be), and
  409.     generally can fit into the 8-byte area.  Of course if your interrupt
  410.     routine is longer, you can still jump to the appropriate routine from
  411.     within the 8 byte interrupt region.
  412.  
  413.     The 8051 instruction set is optimized for the one-bit operations so
  414.     often desired in real-world, real-time control applications.  The
  415.     boolean processor provides direct support for bit manipulation.  This
  416.     leads to more efficient programs that need to deal with binary input
  417.     and output conditions inherent in digital-control problems.  Bit
  418.     addressing can be used for test pin monitoring or program control
  419.     flags.
  420.  
  421.  
  422. 2.2)  8051 Flavors
  423.  
  424.     The 8051 has the widest range of variants of any embedded controller
  425.     on the market.  The smallest device is the Atmel 89c1051, a 20 Pin
  426.     FLASH variant with 2 timers, UART, 20mA.  The fastest parts are from
  427.     Dallas, with performance close to 10 MIPS!  The most powerful chip is
  428.     the Siemens 80C517A, with 32 Bit ALU, 2 UARTS, 2K RAM, PLCC84
  429.     package, 8 x 16 Bit PWMs, and other features.
  430.  
  431.     Among the major manufacturers are:
  432.         AMD      Enhanced 8051 parts
  433.         Atmel    FLASH and semi-custom parts
  434.         Dallas   Battery backed, program download, and fastest variants
  435.         Intel    8051 through 80c51gb / 80c51sl
  436.         Matra    80c154, low voltage static variants
  437.         OKI      80c154, mask parts
  438.         Philips  87c748 thru 89c588 - more variants than anyone else
  439.         Siemens  80c501 through 80c517a, and SIECO cores
  440.         SSI      80x52, 2 x HDLC variant for MODEM use
  441.  
  442.  
  443.     Advanced Micro Devices (AMD)
  444.  
  445.        AMD has a number of enhanced variants including such features as:
  446.        dual data pointers, slave interface with arbitration unit, dual
  447.        port RAM, FIFO buffers, and others.
  448.  
  449.  
  450.     Atmel
  451.  
  452.        The smallest current device is the ATMEL 89c1051, a 20 Pin FLASH
  453.        variant with 2 timers, UART, 20mA.  ATMEL was the first with
  454.        standard pinout FLASH, and with more program cycles than other
  455.        custom pinout FLASH.  These parts compete with OTP and MASK
  456.        product on price, but eliminate inventory problems and the hidden
  457.        costs of OTP development.  This will put real pressure on
  458.        "vanilla" micros like PIC and ST6.
  459.  
  460.  
  461.     Dallas Soft Microcontrollers - DS5000(T), DS5001(T), DS2250(T)
  462.  
  463.        The Dallas Soft Microcontrollers have standard 8051 cores with
  464.        on-chip non-volatile RAM instead of ROM.  This gives the user the
  465.        ability to easily alter the system and is perfect for data
  466.        logging.  These processors are available in both chip and module
  467.        solutions.  Among the features included in this family of
  468.        products:
  469.           - on-chip non-volatile RAM
  470.           - loader in ROM for downloading programs (eliminates the hassle
  471.             of EPROM erase/program/install cycle)
  472.           - built in real time clock option
  473.           - watchdog timer
  474.           - software security (program and data encryption)
  475.  
  476.        The DS500x is a standard 40 pin DIP package (well, mostly
  477.        standard, it is really a BOX which is about double the height of a
  478.        normal chip).  The DS225x is a SIP version which is functionally
  479.        identical to the DS5000 but usually a bit less expensive.
  480.  
  481.        The nice thing about having the RAM on-chip, is that the I/O ports
  482.        are unaffected.  When the RAM is configured as CODE memory, the
  483.        DS5000 behaves exactly as a single-chip 8051.  The NV-RAM is
  484.        static with a built-in lithium battery, and has no limitations on
  485.        the number of writes.  You can download your code as many times as
  486.        you like without damaging the device.  The DS5000 also includes a
  487.        loader in ROM, which permits you to bootstrap code into the RAM to
  488.        get underway.  The loader and on-chip RAM have an encryption
  489.        feature with which you can protect your code from being read back
  490.        from the device if you wish.
  491.  
  492.  
  493.     Dallas High-Speed Micros - DS80c320, DS87c520, DS87c530
  494.  
  495.        Real barn-burners - performance up to 10 MIPS!  Dallas was the
  496.        first to speed up the core.  Wasted clock and memory cycles have
  497.        been removed using a redesigned processor core.  As a result,
  498.        every 8051 instruction is executed up to 3 times faster than the
  499.        original for the same crystal speed.  Clock speeds from DC to
  500.        33MHz!
  501.  
  502.        High performance doesn't just mean speed.  High integration gives
  503.        the user 2 full-duplex hardware serial ports, 13 total interrupt
  504.        sources (6 external), watchdog timer, power management, power-fail
  505.        reset, and other features.
  506.  
  507.  
  508.     Intel MCS-51
  509.  
  510.        Introduced in 1980, it has become the industry standard for
  511.        embedded control.  Intel offers a wide variety of 8051 versions
  512.        with different configurations of on-board EPROM/ROM.  Also low
  513.        power, high integration, and specialized parts are also offered.
  514.  
  515.  
  516.     OKI
  517.  
  518.        OKI makes an 85c154 piggyback - an 8751 but with an EPROM socket
  519.        on top!  Great with an EPROM emulator.
  520.  
  521.  
  522.     Philips
  523.  
  524.        Philips has more 8051 variants than anyone else.  Among the
  525.        derivatives that they have:  40MHz, 24 pin skinny DIP, low
  526.        voltage, quad flat pack (QFP) versions for saving board space,
  527.        OTP, I2C bus, and so on.
  528.  
  529.        The c5xx line features high integration, with many built-in
  530.        features including built-in EMI/RFI suppression.
  531.  
  532.        The c7xx series are very low-end, inexpensive micros.  They are
  533.        offered with less memory (1k, 2k, etc.) and fewer features.  In
  534.        fact the 83c750 sells for only $1 in very high OEM volumes.
  535.  
  536.  
  537.  
  538.     Siemens sab80c517a
  539.  
  540.        The 80c517a is one of the most powerful 8051 variants available.
  541.        It features high clock speed (40 MHz), and high integration with
  542.        32 Bit ALU, 2 UARTS, 2K RAM, PLCC84 package, 8x16 bit PWMs, and
  543.        more.
  544.  
  545.  
  546.     Standard Microsystems Corporation SMC COM20051
  547.        The COM20051 is an integrated microcontroller and network
  548.        interface.
  549.  
  550.        Features:
  551.          -  high performance and low cost
  552.          -  based on popular 8051 architecture
  553.          -  drop-in replacement for 80C32 PLCC
  554.          -  network supports up to 255 nodes
  555.          -  powerful network diagnostics
  556.          -  maximum 512 byte packets
  557.          -  duplicate node ID detection
  558.          -  self-configuring network protocol
  559.          -  retains all 8051 peripherals including Serial I/O and
  560.             2 Timers
  561.          -  utilizes ARCNET(R) Token Bus Network Engine
  562.          -  requires no special emulators
  563.          -  5 Mbps to 156 Kbps data rate
  564.          -  network interface supports RS-485, twisted pair,
  565.             coaxial, and fiber optic interfaces
  566.          -  receive all mode allows any packet to be received
  567.  
  568.  
  569. 2.2)  16-bit 8051 parts
  570.  
  571.  
  572.     A joint project between Intel and Philips Semiconductors has resulted
  573.     in two new excting products - 16 bit 8051s!  Due to a disagreement
  574.     between the parties, they each went their separate ways.  Intel
  575.     developed the MCS-251, which was originally called the ZX (this name
  576.     can still be found on one of the Intel slide shows).  Philips came
  577.     out with the eXtended Architecture (XA) line.
  578.  
  579.     The Intel MCS-251 is a drop-in replacement for the 8051, and is also
  580.     binary compatible.  The XA is more of a 16 bit micro which also
  581.     happens to be source code compatible.  One can argue the merits of
  582.     which approach is better.
  583.  
  584.     Pin compatible parts allow instant performance upgrades for existing
  585.     designs, and the binary compatibility truly preserves users
  586.     investment in code and tools.  By staying firmly in the 80x51 camp,
  587.     Intel allows users transparent access to an enormous horsepower
  588.     range.  To further improve throughput in numerically intensive areas,
  589.     users can use INTEGER, LONGINT, and FLOAT libraries written for the
  590.     MCS-251.  The Philips XA is not a drop-in replacement for the 8051.
  591.  
  592.  
  593.     Binary code compatibility is nice, you can move right up to a more
  594.     powerful engine without having to bust a gut (We all know the Intel
  595.     binary compatible success story with their 80x86 microprocessors).
  596.     But if you're working on a new design, how necessary is binary
  597.     compatibility?  If you're just looking for a souped up '51, Dallas
  598.     already has the 320.  If you need the advanced features, you'll need
  599.     to recompile or rewrite your software anyhow.  You'll also have to
  600.     drag along some compatibility baggage with you in order to use the 16
  601.     bit operations - these are preceded by an escape code (A5H), the only
  602.     instruction not used in the 8051 instruction set.
  603.  
  604.     With source code compatibility, you have to recompile your code (with
  605.     a new set of development tools), since the instruction set has been
  606.     recrafted to allow the biggest bang for the buck.  This process isn't
  607.     100% transparent, but then again, binary compatibility isn't either.
  608.  
  609.     If you're upgrading an existing design, the 251 is probably your only
  610.     reasonable choice (although you might also want to consider the
  611.     Dallas 320).  On new designs, you'll have a tough decision to make.
  612.     Whichever path you choose to take, the 8051 will never be the same
  613.     again.
  614.  
  615.  
  616.     Intel MCS-251
  617.  
  618.        The Intel MCS-251 is 100% binary and pin compatible with the 8051,
  619.        but with a 5-15 times boost in horsepower.  This is achieved by a
  620.        six fold gain in bus cycles, and further hardware improvements to
  621.        avoid wasted bus cycles.
  622.  
  623.        Further performance gains are possible by recoding critical
  624.        sections to take advantage of the new features:  powerful 8/16/32
  625.        bit instructions, flexible 8/16/32 registers, 16MB linear address
  626.        space, 16-bit stack pointer, enhanced BIT manipulations, and
  627.        improved control instructions.  In addition to extra 16/32 bit
  628.        instructions, the 251 includes 40 registers with Accumulator and
  629.        Index functions overlayed as 16x8, 16x16, 10x32.
  630.  
  631.  
  632.     Philips 8051XA
  633.  
  634.        By tossing compatibility out the window, Philips was able to
  635.        develop a true 16 microcontroller while at the same time
  636.        preserving the basic 8051 instruction set (source).  The benefits
  637.        of this break with tradition result in a chip that has dual 16MB
  638.        address spaces (data and code), multitasking support with task
  639.        protected memory segments, a separate SFR bus, fast context
  640.        switching, and optimized code efficiency.  Other features include:
  641.        hardware divide and multiply (over 100 times faster than an 8051),
  642.        32 vectored interrupts, 16 hardware exceptions, and 16 trap
  643.        instructions.
  644.  
  645.  
  646. 2.3)  8051 representatives and approximate prices (in USD $)
  647.  
  648.     There are many, many varieties of 8051 out there.  This is only a
  649.     small sampling of typical prices on Intel chips.
  650.  
  651.         8031 (128 bytes RAM)...................................3.59
  652.         80C31 (CMOS version of previous).......................6.95
  653.         8051AH (256 bytes RAM).................................6.95
  654.         8051AHBASIC (w/Basic interpreter built in)............29.95
  655.         8751 (4K EPROM, 128 bytes RAM)........................26.95
  656.         87C51 (CMOS version of previous)......................39.95
  657.  
  658.  
  659. 2.4)  Advantages realized in implementing control applications on this
  660.       family of microcontrollers
  661.  
  662.     Popular - readily available and widely supported, a full range of
  663.     free and commercial support products is available
  664.  
  665.     Fast and effective - the architecture correlates closely with the
  666.     problem being solved (control systems), specialized instructions mean
  667.     that fewer bytes of code need to be fetched and fewer conditional
  668.     jumps are processed
  669.  
  670.     Low cost - high level of system integration within one component,
  671.     only a handful of components needed to create a working system
  672.  
  673.     Wide range -  ONE set of tools covers the greatest horsepower range
  674.     of any microcontroller family, other suppliers handle a number of
  675.     DIFFERENT and INCOMPATIBLE (and often single-sourced) cores to cover
  676.     the same power range as the 80x51, the 8051 provides a real cost
  677.     savings in tools, training, and software support
  678.  
  679.     Compatibility - opcodes and binaries are the SAME for all 80x51
  680.     variants (unlike most other microcontroller families)
  681.  
  682.     Multi-sourced - over 12 manufacturers, hundreds of varieties,
  683.     something for everyone with the security of ready availability
  684.  
  685.     Constant improvements - improvements in silicon/design increase speed
  686.     and power annually, 16 Bit models coming from several manufacturers,
  687.     low cost skinny DIP models now available
  688.  
  689.  
  690. 3)  SOURCES OF INFORMATION ON THE 8051
  691.  
  692.  
  693. 3.1)  FTP sites
  694.  
  695.     The following is a list of the various anonymous ftp sites that have
  696.     8051 source code and programming languages.  There are many others
  697.     that  are not listed here that contains bits and pieces.  Usually you
  698.     can find them using Archie and searching for "8051", "AS31", "ASM51",
  699.     "MCS-51", "MCS51", and stuff like that.
  700.  
  701.     ftp.pppl.gov (formerly lyman.pppl.gov)
  702.         - this is a great source of 8051 stuff
  703.         /pub/8051
  704.         /pub/incoming - check this out for new untested/unsorted items
  705.  
  706.     ftp.funet.fi (nic.funet.fi)
  707.         - this is a great one, too
  708.         /pub/compilers/8051
  709.         /pub/microprocs/MCS-51   <mirror of ftp.pppl.gov>
  710.         other subdirectories in /pub/microprocs include:
  711.           1802, 6805, 6811, 8048, 8096 and many other microprocessors
  712.  
  713.     ftp.intel.com
  714.         - this ftp site is pretty good now, and getting better all the
  715.           time!
  716.         - send comments to:  ftp-admin@intel.com
  717.         /pub/mcs51
  718.         /pub/mcs51/tools - contains various development tools
  719.  
  720.     nctuccca.edu.tw
  721.         - mirror of ftp.intel.com
  722.         - /vendors/Intel
  723.  
  724.     Philips-News@InetBSystems.us.com - Email (not ftp)
  725.         - send Email with "subscribe" in the subject field to be put
  726.           on list for newsletter
  727.     Philips-archive@InetBSystems.us.com - Email (not ftp)
  728.         - send Email message with the word "help" in the subject line to
  729.           learn how to access the archive
  730.     Philips-forum-request@InetBSystems.us.com  - Email (not ftp)
  731.         - send an Email message with the word "subscribe" in the subject
  732.           line to participate in the forum, and receive usage
  733.           instructions and guidelines
  734.     Philips-Info@InetBSystems.us.com - Email (not ftp)
  735.         - send Email message to get information on all of Philips Email
  736.           services
  737.  
  738.     ftp.mcc.ac.uk
  739.         - this is a new 8051 ftp site
  740.         - soon to be improved
  741.  
  742.     info@circellar.com - Email (not ftp)
  743.         - send Email to get information file on services available
  744.         - all Circuit Cellar INK and BYTE related files available
  745.  
  746.     ftp.ee.ualberta.ca
  747.         /pub/cookbook/digital
  748.         - circuits of all types
  749.         - prog51.zip is a programmer for the ATMEL 89C51 flash part
  750.           by Werner Terreblanche
  751.  
  752.     ftp.luth.se
  753.         /pub/languages/assembler
  754.  
  755.     asterix.inescn.pt - FORTH archive
  756.         /pub/forth/8051
  757.  
  758.     hpcsos.col.hp.com
  759.         /mirrors/.hpib0/forth/8051
  760.         /misc/ns32k/beowulf/a-8051
  761.         /mirrors/.hpib0/forth/eForth
  762.  
  763.     ftp.armory.com (Steve Walz)
  764.         /pub/user/rstevew/8051
  765.         /pub/user/rstevew/TB8051
  766.         /pub/user/rstevew/incoming
  767.  
  768.     ftp.oak.oakland.edu
  769.         - has information and software for a wide range of
  770.           microprocessors and microcontrollers, you may have to look
  771.           around a bit
  772.  
  773.     130.123.96.9
  774.         giovanni/51forth.zip
  775.  
  776.     ftp.kulnet.kuleuven.ac.be
  777.         /pub/MCS-51/keil-demo
  778.  
  779.     ai.uga.edu
  780.         /pub/hardware
  781.         - stuff on the Philips 87C750/1/2 microcontrollers
  782.         - assembler, an update for the software in the DS-750 kit,
  783.           notebook of some early experiences and code
  784.         - responses welcome, Michael A. Covington (mcovingt@ai.uga.edu)
  785.  
  786.     csd4.csd.uwm.edu - no longer supports 8051, don't even try
  787.  
  788.     awaiting final corporate approval... Philips Semiconductor ftp site
  789.  
  790.  
  791. 3.2)  Web pages
  792.  
  793.     S. Joel Katz's web page
  794.         - address is http://www.panix.com/stimpson/micro.html
  795.         - information about 8051 and related microcontrollers
  796.         - not much information yet, but it is increasing rapidly
  797.  
  798.     Automation and Process Control (Olaf Pfeiffer)
  799.         - http://www.ba-karlsruhe.de/automation/home.html
  800.         - http://www.ba-karlsruhe.de/automation/ctrl/FAQ/microFAQ/microFAQ.html
  801.  
  802.  
  803. 3.3)  BBSs
  804.  
  805.     The following BBSs have 8051 information:
  806.  
  807.     AM Research
  808.         - (916)652-7117
  809.  
  810.     Blue Earth Research
  811.         - support for their line of microcontroller boards
  812.         - (507)387-4007
  813.  
  814.     Circuit Cellar, Inc.
  815.         - contains code from their magazine articles and from the
  816.           original Circuit Cellar articles in Byte magazine, also
  817.           contains many other interesting items
  818.         - GOOD STUFF HERE!
  819.         - The BBS is mentioned in the masthead of each issue (on the
  820.           table of contents page).  Excerpts from the BBS appear in Ken
  821.           Davidson's ConnecTime column in every issue with a description
  822.           of how to access the system at the end of every column.
  823.         - (203)871-1988
  824.         - Voice: (203)875-2751
  825.         - Fax: (203)872-2204
  826.  
  827.     Crossware Products
  828.         - +44 763 261716
  829.  
  830.     Dallas Semiconductor
  831.         - Support for their line of innovative products
  832.  
  833.     Dunfield Development Systems
  834.         - support for their Micro-C compiler and development tools
  835.         - includes a lot of nice goodies - CHECK THIS OUT!
  836.         - (613) 256-6289
  837.  
  838.     Electronics Now
  839.         - contains code from their magazine articles
  840.         - (516)293-2283
  841.         - 1200/2400, 8N1
  842.  
  843.     Intel American Marketing Applications Support Bulletin Board System
  844.         - 16 lines, hi-speed modems (14.4K)
  845.         - Lots of useful info and files (including design examples)!
  846.         - Full ANSI-BBS with color is recommended, but support for just
  847.           about all terminal types is provided
  848.         - (916)356-3600 (24 hours)
  849.           Auto config: 1200 thru 14.4K Baud
  850.           8 data bits, no parity, 1 stop
  851.  
  852.     Iota Systems, Inc.
  853.         - Support for their line of hardware and software products
  854.         - 15 application notes which show how to hook up such things as
  855.           clocks, A/D, D/A, and special chips to the 8051
  856.         - (702)831-4732
  857.  
  858.     Micro Computer Control Corporation
  859.         - (609)466-4117
  860.  
  861.     Philips Semiconductor - Europe
  862.         - support for: standard logic, programmable logic,
  863.           in-car electronics (now open), 8 and 16 bit microcontrollers,
  864.           I2C software, third party software, discrete semiconductors,
  865.           cross assemblers (general), RF (planned)
  866.         - PHIBBS is located in the Netherlands: +31-40-721102
  867.         - maximum 21600 baud / V42bis / HST/Vterbo
  868.         - 24 hours a day available
  869.         - Help desk: +31-40-722749  (9.00 AM - 16.00 PM CET)
  870.  
  871.     Philips Semiconductor - North America
  872.         - support for their 8051 variants
  873.         - contains many good source code items
  874.         - partially mirrored on ftp.pppl.gov and nic.funet.fi
  875.         - (800)451-6644 or (408)991-2406
  876.  
  877.  
  878.     PseudoCorp
  879.         - support for their line of simulators and assemblers
  880.         - (804)873-4838
  881.  
  882.     Realtime Control & Forth Board (RCFB)
  883.         - Forth and assembly for the 8051
  884.         - 300 through 14.4 baud
  885.         - (303)278-0364 (24 hours)
  886.  
  887.     Systronix Inc.
  888.         - support for their line of development tools
  889.         - (801)487-2778
  890.  
  891.  
  892. 3.4)  Help available!
  893.  
  894.     This is a new feature in the FAQ.  Listed here are individuals who
  895.     have expressed interest in helping others with hardware and software
  896.     problems for 8051 systems.
  897.  
  898.     Does any one else out there think that they can help?  Just let me
  899.     know what your areas of specialization are and I'll add your name to
  900.     the list.  Thanks!
  901.  
  902.     Dick Barnett <barnettr@mace.cc.purdue.edu>
  903.        Specializes in 8051 (core processors), 80C552, and 87C751
  904.        applications.
  905.  
  906.     Daniel Drennan <xixax@echonyc.com> or <xixax@echonyc.com>
  907.        He claims his electronics knowledge is very rudimentary and
  908.        self-taught (what a modest guy!).  He'll probably be able to point
  909.        you in the right direction.
  910.  
  911.     Mark Hopkins <mark@omnifest.uwm.edu>
  912.        Mark is the author of the CAS assembler and of the 8051.ZIP
  913.        programs.  He's now working on JOLT, a code generator with a
  914.        C-like syntax.  His areas of specialization include:
  915.        multitasking, interrupts, basic stuff (like addressing, memory
  916.        spaces), the 8052 BASIC chip, interfacing the chip with external
  917.        inputs and outputs
  918.  
  919.     Hans Schou <chlor@biocat.ruc.dk>
  920.        Hans is offering his assistance to users of the Standard
  921.        Microsystems Corp. COM20051.  He's not an expert, but he has some
  922.        experience with it.
  923.  
  924.  
  925. 4)  8051 PRODUCTS
  926.  
  927.     This section includes descriptions and references to free and
  928.     commercial software for the 8051.  FTP sites and BBSs contain many
  929.     quality packages and code samples for free.  For heavy duty use, you
  930.     might prefer the many commercial packages that are available.  With
  931.     the public domain (or free) stuff, you're usually on your own.  The
  932.     commercial packages usually provide extensive documentation and
  933.     support.
  934.  
  935.  
  936. 4.1)  Free languages and development tools
  937.  
  938.     The following is a list of the languages and development tools that I
  939.     could find on the net.  Nearly all of them include source code,
  940.     however not all are public domain.
  941.  
  942.     Assembler
  943.  
  944.       Program: ML-ASM51.ZIP
  945.       Description: MetaLink's 8051 family macro assembler
  946.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  947.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  948.  
  949.       Program: A51.ZIP
  950.       Description: PseudoSam 8051 Cross Assembler
  951.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  952.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  953.  
  954.       Program: AS31.ZIP
  955.       Description:  C source for an 8051 assembler, and a simple monitor
  956.       Author:  Ken Stauffer
  957.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  958.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  959.                  ftp.uu.net
  960.                  oak.oakland.edu : /pub/msdos/crossasm/as31.zip
  961.                  many other locations (use Archie to find)
  962.  
  963.       Program: CUG292WK.ZIP
  964.       Description:  C source for a cross assembler, includes 8051
  965.       Author:  Alan R. Baldwin
  966.       Location:  oak.oakland.edu : /pub/msdos/crossasm
  967.                  pc.usl.edu : /pub/msdos/systools
  968.                  many other locations (use Archie to find)
  969.  
  970.       Program: Frankenstein
  971.       Description:  C source for a cross assembler, includes 8051
  972.       Author:  Mark Zenier
  973.       Location:  ftp.njit.edu : /pub/msdos/frankasm/FRANKASM.ZOO
  974.                  lth.se : /pub/netnews/alt.sources/volume90/dec
  975.                  ftp.uni-kl.de : /pub1/unix/languages/frankenstein.tar.Z
  976.                  many other locations (use Archie to find)
  977.  
  978.       Program:  CAS 8051 assembler
  979.       Description:  Experimental one-pass assembler for the 8051
  980.                     with C-like syntax.  Includes assembler, linker
  981.                     and disassembler.
  982.       Author:  Mark Hopkins
  983.       Location:  ftp.pppl.gov : /pub/8051/assem
  984.                  ftp.funet.fi : /pub/microprocs/MCS-51/csd4-archive/assem
  985.  
  986.       Program:  a51
  987.       Description:  Portable cross assembler (source in C), other
  988.                     processors available
  989.       Author:  William C. Colley, III
  990.       Location:  hpcsos.col.hp.com : /misc/ns32k/beowulf/a-8051
  991.  
  992.  
  993.     Basic
  994.  
  995.       Program:  BASIC52.ZIP
  996.       Description:  Source files for original BASIC 52 interpreter
  997.       Author:  Intel Corporation, Embedded Controller Operations
  998.       Location:  ftp.intel.com : /pub/mcs51
  999.  
  1000.       Program:  BAS051.ZIP
  1001.       Description:  Converts IBM BASIC to 8051 assembly (compiler)
  1002.       Author:  Winefred Washington
  1003.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1004.                  ftp.funet.fi : /pub/8051/signetics-bbs
  1005.  
  1006.       Program:  BASIC-52.ZIP
  1007.       Description:  Source files for BASIC-52 interpreter
  1008.       Author:  Intel Corporation, Embedded Controller Operations
  1009.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1010.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1011.  
  1012.       Program:  BASIC31.ZIP
  1013.       Description:  BASIC-52 interpreter for 8031/8051 in external EPROM
  1014.       Author:  Intel w/ changes by Dan Karmann
  1015.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1016.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1017.  
  1018.       Program:  TB-51.ZIP
  1019.       Description:  TinyBASIC for 8031
  1020.       Author:  JHW (from Intel InSite library) w/ fixes by Tom Schotland
  1021.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1022.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1023.  
  1024.       Program:  TB51ML23.ZIP
  1025.       Description:  MetaLink ASM compatible tiny BASIC
  1026.       Author:  adapted for MetaLink assembler by Jim Lum
  1027.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1028.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1029.  
  1030.  
  1031.     Forth
  1032.  
  1033.       Program:  EFORTH51.ZIP
  1034.       Description:  eFORTH environment for the 8051
  1035.       Author:  C. H. Ting
  1036.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1037.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1038.                  asterix.inescn.pt : /pub/forth/8051
  1039.                  hpcsos.col.hp.com : /mirrors/.hpib0/forth/eForth
  1040.  
  1041.       Program:  FORTH51.ZIP (FORTH86.ZIP used as host)
  1042.       Description:  FORTH development system for 8051 with PC host
  1043.       Author:  William H. Payne, the author of "Embedded Controller
  1044.                Forth for the 8051 Family"
  1045.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1046.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1047.                  asterix.inescn.pt : /pub/forth/8051
  1048.                  hpcsos.col.hp.com : /mirrors/.hpib0/forth/8051
  1049.  
  1050.       Program:  XD8051.ZIP
  1051.       Description:  Development environment for use with F-PC Forth
  1052.       Author:  Paulo A.D. Ferreira
  1053.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1054.                  ftp.funet.fi : /pub/microprocs/MCS-51/signetics-bbs
  1055.  
  1056.       Program:  51FORTH.ZIP
  1057.       Description:  Subroutine threaded Forth
  1058.       Author:  Scott Gehmlich
  1059.       Location:  hpcsos.col.hp.com : /mirrors/.hpib0/forth/8051
  1060.                  130.123.96.9 : /giovanni/51forth.zip
  1061.  
  1062.       Program:  FORTH552.ZIP
  1063.       Description:  A Non-Standard Forth System for the Signetics 80C552
  1064.       Author:  Alberto Pasquale
  1065.       Location:  hpcsos.col.hp.com : /mirrors/.hpib0/forth/8051
  1066.  
  1067.  
  1068.     Development systems
  1069.  
  1070.       Program:  8051.zip
  1071.       Description:  Many development tools including: debugger, monitor,
  1072.                     LCD and stepper moter driver, communications, host
  1073.                     client, and much more.  This is a great collection of
  1074.                     tools.
  1075.       Author:  Mark Hopkins
  1076.       Location:  ftp.pppl.gov : /pub/8051/signetics-bbs
  1077.                  ftp.funet.fi : /pub/microprocs/MCS-51/csd4-archive
  1078.  
  1079.       Program:  RISM and IECM51.EXE compatible host system
  1080.       Description:  RISM is a reduced instruction set monitor and
  1081.                     IECM51.EXE is its compatible host system for a PC
  1082.       Comments:  These two programs together constitute a bare-bones
  1083.                  method of developing 80C51 system code without an
  1084.                  emulator.  RISM51X is installed in the target system
  1085.                  and connected to a host PC system through a serial port.
  1086.                  The host PC runs the debugger IECM51.EXE.  Once the
  1087.                  system has been debugged, RISM can be removed and the
  1088.                  target can be run in stand-alone mode.
  1089.       Author:  Intel
  1090.       Location:  ftp.intel.com : /pub/mcs51/tools
  1091.  
  1092.       Program:  ApBUILDER 2.0
  1093.       Description:  Development system for the Intel MCS-51(R) family
  1094.                     (also for the MCS-96(R) family, 80x186, and 80x386
  1095.                     embedded microcontrollers).
  1096.       Comments:  Requires Windows 3.1
  1097.                  APBUILDR.TXT - description in ASCII
  1098.                  APBDISK1.EXE - binary self-extracting file for disk 1
  1099.                  APBDISK2.EXE - binary self-extracting file for disk 2
  1100.       Author:  Intel
  1101.       Location:  ftp.intel.com : /pub/mcs51 and /pub/mcs96
  1102.  
  1103.       Program:  FXDSMAN.EXE
  1104.       Description:  8xC51Fx data sheets and manual in Windows 3.1
  1105.                     hypertext style
  1106.       Comments:  binary self-extracting file for one diskette
  1107.       Author:  Intel
  1108.       Location:  ftp.intel.com : /pub/mcs51/80c51
  1109.  
  1110.       Program: sim51d
  1111.       Description:  Shareware Simulator in German
  1112.                     DM 50 to register for full version
  1113.       Author:  Werner Hennig-Roleff
  1114.       Location:  ftp.pppl.gov : /pub/8051/hannover
  1115.  
  1116.       Program: sim552vq.zip
  1117.       Description:  80C552 simulator (Freeware)
  1118.       Comments:  Program is capable of reading .HEX and .S19 records, or
  1119.                  saving memory to a file.  It supports both code and
  1120.                  data.  Written in Turbo Pascal for XT and upwards.
  1121.       Author:  Brian Brown
  1122.       Location:  cscnt.cit.ac.nz : /pub/msdos/sim552v1.zip
  1123.  
  1124.  
  1125. 4.2)  Free C compilers
  1126.  
  1127.     Several commercial C compilers have evaluation versions available.
  1128.     These are not too useful (even for hobbyist projects) since they
  1129.     usually don't include libraries.  However, they do afford the user
  1130.     the chance to inspect the quality of the code generated.  Among those
  1131.     currently available:
  1132.  
  1133.         An evaluation version of COMPASS is available from Production
  1134.         Language Systems.  This package includes a C compiler, assembler,
  1135.         debugger, simulator, etc. and runs under Windows 3.1.  This
  1136.         package can be downloaded from the IntelC Compuserve forum or
  1137.         from their BBS:
  1138.               (817)599-8363
  1139.               Enter YY8051 as password for first-time login
  1140.               (In case of difficulty, contact manvillec@aol.com)
  1141.  
  1142.         The Keil C compiler evaluation package is available as a freeware
  1143.         C compiler.  It can be downloaded from:
  1144.                  ftp.kulnet.kuleuven.ac.be : /pub/MCS-51/keil-demo
  1145.         Thanks to Christofe Huygens for setting this up.
  1146.  
  1147.         You can now get the freeware version of the Hi-Tech C compiler
  1148.         from their own (rather modest) ftp site: ftp.hitech.com.au.
  1149.         They are also working on a Web setup too, but it's not ready yet.
  1150.         It will be the expected www.hitech.com.au when it's up.
  1151.  
  1152.  
  1153.     Mark Hopkins has changed the goal of his compiler project.  Instead
  1154.     of implementing a C compiler, he is working on an implementation of
  1155.     JOLT for the '51.  Its main characteristic is the complete and
  1156.     seamless integration of functional and imperative programming into
  1157.     one language.  The language envisioned essentially has a C syntax and
  1158.     could probably be mistaken as being a dialect of C.  More on this as
  1159.     it develops.
  1160.  
  1161.     However, the good news is that Ahmad Ibrahim informs me that he's
  1162.     well on his way to putting together a C compiler which will be
  1163.     released as freeware.  The initial offering will generate code only
  1164.     for the 8051.  By making the compiler table driven, it will be
  1165.     adaptable for other processors.  Other features are in the works
  1166.     including a simulator/debugger.
  1167.  
  1168.  
  1169.     In most cases, it makes more sense to invest a bit, and get something
  1170.     serious.  Also, by buying a commercial package, you have the
  1171.     advantage of having the documentation, and being able to get
  1172.     technical support.  There are two low-cost C compilers currently
  1173.     available for 8051 development.
  1174.  
  1175.     I've been using the Dunfield Development System, and its really quite
  1176.     nice.  I've also heard many good things about it from others.  For
  1177.     $100 you get a near ANSI-C compiler, run-time library with source,
  1178.     assembler, ROM debugger, integrated development environment, monitor
  1179.     with source, utilities, and other extras.  A high quality simulator
  1180.     for only $50 is also available separately.  The simulator has an
  1181.     option allowing you to interface to your target by using an on-chip
  1182.     monitor.  Although not freeware, the low price, the features, all of
  1183.     the extra goodies, and the good reviews make this a package worth
  1184.     looking at.  Also, if you're interested in working on more than one
  1185.     family of microcontroller, Dunfield supports a wide range.  This
  1186.     means only needing to learn one system, instead of many.
  1187.  
  1188.     Another low priced ($100) C compiler comes from Micro Computer
  1189.     Control.  Cross compilers running under DOS are available for the
  1190.     8051 and the Z8 (including Super-8).  This package includes a C
  1191.     compiler, assembler, linker, librarian, and extensive printed
  1192.     documentation.  A simulator/source code debugger is available for an
  1193.     additional $79.95.  The simulator is completely configurable, so much
  1194.     so that you don't even need the target hardware to test with.  You
  1195.     can configure all I/O and other features of your target chip or
  1196.     environment.
  1197.           Micro Computer Control Corporation
  1198.           PO Box 275, 17 Model Ave., Hopewell, NJ  08525
  1199.           (609)466-1751   Fax: (609)466-4116   BBS: (609)466-4117
  1200.           Email: 73062.3336@compuserve.com
  1201.  
  1202.  
  1203. 4.3)  Commercially available products
  1204.  
  1205.     Many firms (large and small) offer a variety of 8051 microcontroller
  1206.     variants, programming languages, support packages, and development
  1207.     systems.
  1208.  
  1209.     No endorsement is implied by inclusion in this list.  I apologize to
  1210.     anyone I left out;  It's only because I didn't know about you.  If
  1211.     you want to be included in this list, just drop me a line - please.
  1212.     Any corrections and additions appreciated.
  1213.  
  1214.     C compilers ($$$ - high, $$ - medium, $ - low priced)
  1215.         - 2500 A.D.
  1216.         - Archimedes Software  $$$
  1217.              compiler, assembler, debugger, real-time kernel, ROM
  1218.              monitor, libraries for special 8051's to set SFR, embedded
  1219.              I/O devices, A/D, etc.
  1220.         - Avocet Systems  $$
  1221.              repackaging of the Hi-Tech Software C compiler
  1222.         - BSO/Tasking  $$
  1223.         - Crossware Products
  1224.         - Dunfield Development Systems  $
  1225.              Complete C compiler development system for MS-DOS
  1226.              includes: compiler, run-time library with source, assembler,
  1227.                 ROM debugger, integrated development environment, monitor
  1228.                 with source, utilities, and other extras
  1229.              low price:  $100
  1230.              good reputation and good support
  1231.              works well with the Dallas DS5000/DS2250
  1232.         - Franklin Software  $$$
  1233.              same as Keil Electronics C
  1234.              compiler, assembler, debugger, real-time kernel, ROM
  1235.                 monitor, libraries for special 8051's to set SFR,
  1236.                 embedded I/O devices, A/D, etc.
  1237.         - IAR Systems
  1238.              IAR tool kit comes with a C-Cross compiler, assembler,
  1239.                 Xlink linker, Xlib librarian, C-SPY simulator, editor,
  1240.                 make utility and a real-time kernel
  1241.              formerly licensed for distribution in the US and Canada
  1242.                 under the Archimedes brand name
  1243.         - Hi-Tech Software  $$
  1244.              high compliance to ANSI C
  1245.              available for DOS and soon for SUN
  1246.         - Intermetrics Microsystems Software, Inc.
  1247.              Whitesmith's compiler, assembler, and C source level
  1248.              debugger
  1249.         - Keil Electronics
  1250.         - Mandeno Granville Electronics, Ltd
  1251.              SYS51C - ANSI C Cross Compiler
  1252.         - Micro Computer Control  $
  1253.              Developer's kit includes "C"-like compiler, assembler,
  1254.                 linker, librarian, extensive printed documentation
  1255.              low cost ($99.95)
  1256.         - Nohau Corporation
  1257.              sells and supports Franklin C
  1258.         - Okapi Systems
  1259.         - Production Languages Corporation
  1260.              DOS- and Windows- based compilers
  1261.              Integrated development environment includes ANSI C compiler,
  1262.                 assembler, linker, librarian, debugger
  1263.         - Signum Systems
  1264.  
  1265.     Basic interpreters/compilers
  1266.         - Binary Technology, Inc.
  1267.         - Iota Systems, Inc.
  1268.              Basic-752 interpreter (simulator also available)
  1269.              Basic-52 Plus interpreter
  1270.         - Micro Future
  1271.              Basic-52 development system
  1272.         - Systronix Inc. (Basic compiler)
  1273.  
  1274.     Pascal
  1275.         - Mandeno Granville Electronics, Ltd
  1276.              PASCAL51 - Advanced Turbo PASCAL compliant cross compiler
  1277.         - Scientific Engineering Labs
  1278.  
  1279.     Modula-2
  1280.         - Mandeno Granville Electronics, Ltd
  1281.              Mod51 - optimizing Modula-2 Compiler, smallest program is 14
  1282.              bytes, ideal for both very tight/fast projects and very
  1283.              large ones with multiple modules, produces smaller/tighter
  1284.              code than C, has extensive libraries and working examples
  1285.         - Vail Silicon Tools, Inc.
  1286.  
  1287.     PL/M
  1288.         - BSO/Tasking
  1289.  
  1290.     Board level products
  1291.         - Ackerman Computers Sciences (ACS)
  1292.         - AM Research
  1293.              complete FORTH based system with PC based host system
  1294.         - Binary Technology, Inc.
  1295.         - Blue Earth Research
  1296.         - Blue Ridge Micros (8031 and 8052-BASIC based boards)
  1297.         - Circuit Cellar Inc.
  1298.         - DataCraft International
  1299.         - Dunfield Development Systems
  1300.         - EE Systems
  1301.         - Forth, Inc.
  1302.         - HiTech Equipment Corp.
  1303.         - Iota Systems, Inc. (line of development packages, boards,
  1304.              peripherals, and components)
  1305.         - J & M Microtek, Inc.
  1306.         - L.S. Electronic Systems Design
  1307.         - Mandeno Granville Electronics, Ltd
  1308.         - Parallax, Inc.
  1309.         - Prologic Designs
  1310.         - Rigel Corporation
  1311.         - Software Science
  1312.         - Suncoast Technologies
  1313.         - URDA, Inc.
  1314.  
  1315.     Assemblers
  1316.         - 2500 A.D.
  1317.         - Archimedes Software
  1318.         - BSO/Tasking
  1319.         - Crossware Products
  1320.         - Custom Computer Consultants
  1321.         - Cybernetics Microsystems
  1322.         - Dunfield Development Systems
  1323.              Supports both Intel and Motorola style syntax
  1324.         - Intel Corporation
  1325.         - Keil Electronics
  1326.         - Lear Com Company
  1327.         - Metalink
  1328.         - Micro Computer Control
  1329.         - Microtek Research
  1330.         - Nohau Corporation
  1331.         - Okapi Systems
  1332.         - Onset Computer Corporation (8051 Assember for MAC)
  1333.         - Parallax, Inc.
  1334.         - PseudoCorp
  1335.         - Raven Computer Systems
  1336.         - Signum Systems
  1337.         - Speech Technology Inc.
  1338.         - Sysoft SA
  1339.         - Universal Cross Assemblers
  1340.              CROSS32 supports 40-50 different processors
  1341.  
  1342.     Forth
  1343.         - AM Research
  1344.              Development system, features kernel of less than 700 bytes
  1345.         - Forth, Inc.
  1346.              A cross-development product for the 8051 family
  1347.                 which includes a board and extensive documentation.
  1348.         - Forth Systeme
  1349.         - MPE: MicroProcessor Engineering Ltd.
  1350.              A cross-development system for the 8051 family
  1351.                 extensive documentation
  1352.              interactive single chip development, multitasking,
  1353.                 bank switching for more than 64k code
  1354.         - Offete Enterprises
  1355.              8051 eForth (C. H. Ting -- $25.00).  "A small ROM based
  1356.                 Forth system ... Source code is in MASM IBM 5.25 disk
  1357.                 with 8051 eForth Implementation Note."
  1358.  
  1359.     ROM Monitor-based Debuggers
  1360.         - ChipTools (ChipView-51 looks like turbo debugger)
  1361.         - Dunfield Development Systems
  1362.              Can be used with DS5000 for single-chip in-circuit
  1363.                 emulation
  1364.  
  1365.     Simulators
  1366.         - 2500 A.D.
  1367.         - Avocet Systems
  1368.         - ChipTools
  1369.              on a 33 MHz 486 matches the speed of a 12 MHz 8051
  1370.         - Cybernetic Micro Systems
  1371.         - Dunfield Development Systems
  1372.              Low cost $50.00
  1373.              500,000+ instructions/second on 486/33
  1374.              Can interface to target system for physical I/O
  1375.              Includes PC hosted "on chip" debugger with identical user
  1376.                 interface
  1377.         - HiTech Equipment Corp.
  1378.         - Iota Systems, Inc.
  1379.         - J & M Microtek, Inc.
  1380.         - Keil Electronics
  1381.         - Lear Com Company
  1382.         - Mandeno Granville Electronics, Ltd
  1383.         - Micro Computer Control Corporation
  1384.              Simulator/source code debugger ($79.95)
  1385.         - Microtek Research
  1386.         - Production Languages Corp.
  1387.         - PseudoCorp
  1388.  
  1389.     Emulators ($$$ - high, $$ - medium, $ - low priced)
  1390.         - Advanced Micro Solutions  $$
  1391.         - Advanced Microcomputer Systems, Inc.  $
  1392.         - American Automation  $$$  $$
  1393.         - Applied Microsystems  $$
  1394.         - ChipTools (front end for Nohau's emulator)
  1395.         - Cybernetic Micro Systems  $
  1396.         - Dunfield Development Systems $
  1397.              plans for pseudo-ice using Dallas DS5000/DS2250
  1398.              used together with their resident monitor and host debugger
  1399.         - HBI Limited  $
  1400.         - Hewlett-Packard  $$$
  1401.         - HiTech Equipment Corp.
  1402.         - Huntsville Microsystems  $$
  1403.         - Intel Corporation  $$$
  1404.         - Kontron Electronics  $$$
  1405.         - Mandeno Granville Electronics, Ltd
  1406.              full line covering everything from the Atmel flash to the
  1407.                 Siemens powerhouse 80c517a
  1408.         - MetaLink Corporation  $$  $
  1409.         - Nohau Corporation  $$
  1410.         - Orion Instruments  $$$
  1411.         - Philips $
  1412.              DS-750 pseudo-ICE developed by Philips and CEIBO
  1413.              real-time emulation and simulator debug mode
  1414.              source-level debugging for C, PL/M, and assembler
  1415.              programs 8xC75x parts
  1416.              low cost - only $100
  1417.              DOS and Windows versions available
  1418.         - Signum Systems  $$
  1419.         - Sophia Systems  $$$
  1420.         - Zax Corporation
  1421.         - Zitek Corporation  $$$
  1422.  
  1423.     Real-time
  1424.         - Byte-BOS Integrated Systems
  1425.              small, prioritized, preemptive real-time kernel
  1426.         - Embedded System Products (formerly A.T. Barrett and Associates)
  1427.              ROMable embedded-system kernel: source provided.  Provides
  1428.              programming interface identical on all target platforms.
  1429.              Basic, advanced, and extended library packages available.
  1430.         - Intellimap Engineering
  1431.              DCE51 real time operating system
  1432.         - JMI Software Systems, Inc.
  1433.              small, prioritized, preemptive real-time kernel
  1434.         - U S Software
  1435.              SuperTask! - multitasking executive
  1436.  
  1437.     Trainers
  1438.         - Advanced Educational Systems (AES)
  1439.              complete learning system (board, LCD, keypad, A/D, D/A, etc)
  1440.         - Sun Equipment Corp.
  1441.              trainers
  1442.  
  1443.     Miscellaneous
  1444.         - Creative Applications Engineering, Inc
  1445.              CheepTools (integrated environment)
  1446.         - Dallas Semiconductor
  1447.              evaluation/development kit for their DS5000 (very nice)
  1448.         - Data Sync Engineering (disassembler)
  1449.         - Educational Laboratories
  1450.              development courses:
  1451.                8051 Microcontroller Based Computer Design
  1452.                Programming 8051 Based Computers
  1453.              each course $19.95, both $29.95
  1454.         - Electronic Product Design, Inc.
  1455.              development system (integrated package with assembler,
  1456.              project manager, text editor, programmer)
  1457.         - Exor Inc. (ladder logic compiler)
  1458.         - Iota Systems, Inc.
  1459.              integrated environment system
  1460.         - Mandeno Granville Electronics, Ltd
  1461.              PIC to 8051 conversion program
  1462.         - Parallax, Inc.
  1463.              programmers
  1464.         - Quantasm Corp.
  1465.              ASMFLOW - produces flowchart and tree diagrams from source
  1466.                 code, register usage analysis, Xref, timing info
  1467.         - U S Software
  1468.              USNET - TCP/IP networking suite
  1469.              USFiles - file system
  1470.              GOFAST - floating point library
  1471.  
  1472.  
  1473.     2500 A.D.       109 Brookdale Ave., Box 480, Buena Vista, CO  81211
  1474.                     (719)395-8683
  1475.  
  1476.     Ackerman Computer Sciences (ACS)
  1477.                     4276 Lago Way, Sarasota, FL  34241
  1478.                     (813)377-5775   Fax: (813)378-4226
  1479.  
  1480.     Advanced Educational Systems (AES)
  1481.                     1407 North Batavia Street, Orange, CA  92677
  1482.                     (800)730-3232   (714)744-0981   Fax: (714)744-2693
  1483.  
  1484.     Advanced Micro Devices
  1485.                     901 Thompson Place, PO Box 3453
  1486.                     Sunnyvale, CA  94088-3000
  1487.                     (408)732-2400
  1488.  
  1489.     Advanced Microcomputer Systems, Inc.
  1490.                     1321 NW 65th Place, Fort Lauderdale, FL 33309
  1491.                     (305)975-9515  Fax: (305)975-9698
  1492.  
  1493.     Advanced Micro Solutions
  1494.                     1033 S Imperial Dr., Hartland, WI 53029
  1495.                     (414)367-3577
  1496.  
  1497.     American Automation
  1498.                     2651 Dow Avenue, Tustin, CA  92680
  1499.                     (714)731-1661
  1500.  
  1501.     AM Research     4600 Hidden Oaks Lane, Loomis, CA  95650
  1502.                     (800)949-8051   (916)652-7472   Fax: (916)6642
  1503.                     BBS: (916)652-7117
  1504.                     Email: sofia@netcom.com
  1505.  
  1506.     Applied Microsystems
  1507.                     5020 148th Ave. N.E., PO Box 97002
  1508.                     Redmond, WA  98073-9702
  1509.  
  1510.     Archimedes Software
  1511.                     2159 Union St., San Francisco, CA  94123
  1512.                     (415)567-4010
  1513.  
  1514.     Ashling Microsystems Ltd
  1515.     Ireland         Plessey Technological Park
  1516.                     Limerick, Ireland
  1517.                     +353 61 334466   Fax:  +353 61 334477
  1518.     United Kingdom  Butler House
  1519.                     19-23 Market Street
  1520.                     Maidenhead, Berkshire,  UK
  1521.                     +0628 773070   Fax: 0628 773009
  1522.  
  1523.     Atmel           <anyone have this address>
  1524.  
  1525.     Avocet Systems  120 Union St., Rockport, ME  04856
  1526.                     (800)448-8500  (207)236-9055   Fax: (207)236-6713
  1527.  
  1528.     Binary Technology, Inc.
  1529.                     PO Box 541, Carlisle, MA  01741
  1530.                     (508)369-9556   Fax: (508)369-9549
  1531.  
  1532.     Blue Earth Research
  1533.                     165 W. Lind Ct., Mankato, MN  56001-0400
  1534.                     (507)387-4001   Fax: (507)387-4008
  1535.                     BBS: (507)387-4007
  1536.  
  1537.     Blue Ridge Micros
  1538.                     2505 Plymouth Rd., Johnson City, TN  37601
  1539.                     (615)335-6696   Fax: (615)929-3164
  1540.  
  1541.     BSO/Tasking
  1542.     International   333 Elm Street, Dedham, MA  02026-4530
  1543.                     (800)458-8276  (617)320-9400  Fax: (617)320-9212
  1544.     Europe          Tasking Software BV
  1545.                     P O Box 899, 3800 AW Amersfoort, Netherlands
  1546.                     +31 33 558584   Fax: +31 33 550033
  1547.  
  1548.     Business Data Computers
  1549.                     P.O. Box 1549, Chester, CA  96020
  1550.  
  1551.     Byte-BOS Integrated Systems
  1552.                     P.O. Box 3067, Del Mar, CA 92014
  1553.                     (800)788-7288   (619)755-8836
  1554.  
  1555.     ChipTools Inc   (905)274-6244   Fax: (905)891-2715
  1556.                     Email: chiptool@hookup.net
  1557.  
  1558.     Circuit Cellar Inc.
  1559.                     4 Park St., Vernon, CT  06066
  1560.                     (203)875-2751   Fax: (203)872-2204
  1561.  
  1562.     Creative Applications Engineering, Inc
  1563.                     Ed Carryer
  1564.                     (415)494-2363   BBS: (415)494-8463
  1565.  
  1566.     Crossware Products
  1567.                     2 The Lawns, Melbourn, Royston, Herts  SG8 6BA, UK
  1568.                     +44 763 261539   Fax: +44 763 262983
  1569.                     BBS: +44 763 261716
  1570.                     Email: sales@crossware.com
  1571.  
  1572.     Custom Computer Consultants
  1573.                     1807 Huron River Drive, Ypsilanti, MI 48197
  1574.  
  1575.     Cybernetic Micro Systems
  1576.                     Box 3000, San Gregorio, CA  94074
  1577.                     (415)726-3000
  1578.  
  1579.     Dallas Semiconductor
  1580.                     4401 S. Beltwood Parkway, Dallas, TX  75244-3292
  1581.                     (214)450-0448   Fax: (214)450-3715
  1582.                     International:  (214)450-5351
  1583.                     Orders:  (800)336-6933
  1584.                     Email:  self@dalsemi.com (Kevin Self, appl. engineer)
  1585.                             (great email address! right?)
  1586.  
  1587.     DataCraft International
  1588.                     2828 Ione Dr., San Jose, CA  95132
  1589.                     (800)873-3709   (408)259-4866
  1590.  
  1591.     Data Sync Engineering
  1592.                     POB 146, E. Stroudsburg, PA  18301
  1593.                     (717)421-1977
  1594.  
  1595.     Dunfield Development Systems
  1596.                     P.O. Box 31044, Nepean, Ontario Canada   K2B 8S8
  1597.                     (613)256-5820   Fax: (613)256-5821
  1598.                     BBS: (613)256-6289
  1599.                     Email:  ddunfield@bix.com
  1600.  
  1601.     EE Systems      50935 Hill Dr., Elkhart, IN  46514
  1602.                     (219)296-1754   Fax: (219)522-4271
  1603.  
  1604.     Electronic Product Design, Inc.
  1605.                     6963 Bluebelle Way, Springfield, OR  97478
  1606.                     (503)741-0778
  1607.  
  1608.     Embedded System Products (formerly A.T. Barrett and Associates)
  1609.                     11501 Chimney Rock, Houston, TX  77035-2900
  1610.                     (800)525-4302   (713)728-9688   Fax: (713)728-1049
  1611.  
  1612.     Exor Inc.
  1613.                     4740T Interstate Dr., Cincinnati, OH 45246
  1614.                     (513)874-4665   Fax: (513)874-3684
  1615.  
  1616.     Forth, Inc.     1-800-55FORTH
  1617.  
  1618.     Forth Systeme   P.O. Box 1103, Breisach, Germany
  1619.                     7767-551
  1620.  
  1621.     Franklin Software
  1622.                     (408)296-8051
  1623.  
  1624.     HBI Limited
  1625.                     6F, 1 Fleming Road, Hong Kong
  1626.                     852-891-3673  Fax: 852-834-9748
  1627.  
  1628.     Hewlett-Packard 1501 Page Mill Rd., Palo Alto, CA  94304
  1629.  
  1630.     HiTech Equipment Corp.
  1631.                     9400 Activity Rd., San Diego, CA  92126
  1632.                     (619)566-1892   Fax: (619)530-1458
  1633.  
  1634.     Hi-Tech Software
  1635.                     PO Box 103, Alderly QLD 4051, Australia
  1636.                     (+61-7) 300 5011   Fax: (+61-7) 300 5246
  1637.                     Email: hitech@hitech.com.au
  1638.  
  1639.     Hitex (UK) Ltd  Sir William Lyons Road, Science Park
  1640.                     Coventry CV4 7EX
  1641.                     +0203 692066   Fax: +0203 692131
  1642.  
  1643.     Huntsville Microsystems
  1644.                     4040 S. Memorial Parkway, PO Box 12415
  1645.                     Huntsville, AL  35802
  1646.  
  1647.     IAR Systems Software
  1648.     North America   One Maritime Plaza, Suite 1770
  1649.                     San Fransisco, CA 94111  USA
  1650.                     (415)765-5500   Fax: (415)765-5503
  1651.     Sweden          IAR Systems AB
  1652.                     Box 23051
  1653.                     S-750 23 Uppsala, Sweden
  1654.                     +46 18 16 7800   Fax: +46 18 16 7838
  1655.     Germany         IAR Systems GmbH
  1656.                     Brucknerstrasse 27
  1657.                     D-81677 Munchen, Germany
  1658.                     +49 89 470 6022   Fax: +49 89 470 9565
  1659.     United Kingdom  IAR Systems Ltd
  1660.                     9 Spice Court
  1661.                     Plantation Wharf, York Rd
  1662.                     London SWII 3UE, England
  1663.                     +44 71 924 3334   Fax: +44 71 924 5341
  1664.  
  1665.     Intel Corporation
  1666.                     3065 Bowers Ave., Santa Clara, CA  95051
  1667.                     Technical Help: (800)628-8686 (USA/Canada only)
  1668.                        5 am to 5 pm PST
  1669.                     Email: james_sampson@ccm.hf.intel.com
  1670.                     Faxback support: (800)628-2283 (USA/Canada)
  1671.                        touch tone phones only
  1672.                        Will only FAX to USA/Canada locations
  1673.                        English or Japanese support is available
  1674.                     BBS: (916)356-3600  24 Hr.
  1675.                        Auto config: 1200 thru 14.4K Baud
  1676.  
  1677.     Intellimap Engineering
  1678.                     1140 Morrison Dr., Suite 222
  1679.                     Ottawa Ontario Canada K2H 8S9
  1680.                     (613)829-3196   Fax: (613)820-1773
  1681.  
  1682.     Intermetrics Microsystems Software, Inc.
  1683.                     733 Concord Ave., Cambridge, MA  02138
  1684.                     (617)661-0072   Fax: (617)868-2843
  1685.  
  1686.     Iota Systems, Inc.
  1687.                     924 Incline Way, Suite N / POB 8987
  1688.                     Incline Village, NV  89452-8987
  1689.                     (702)831-6302   Fax: (702)831-4629
  1690.  
  1691.     J & M Microtek, Inc.
  1692.                     83 Seaman Rd., W Orange, NJ  07052
  1693.                     (201)325-1892   Fax: (201)736-4567
  1694.  
  1695.     JMI Software Systems, Inc.
  1696.                     P.O. Box 481, 904 Sheble Lane, Spring House, PA 19477
  1697.                     (215)628-0840   Fax: (215)628-0353
  1698.  
  1699.     Keil Elektronik GmbH
  1700.                     Bretonischer Ring 15
  1701.                     D-85630 Grasbrunn b. Muenchen, Germany
  1702.                     089-465057   Fax: 089-468162
  1703.  
  1704.     Kontron Electronics
  1705.                     D-8057 Eching/Munich
  1706.                     Oskar von Miller Str. 1, Germany
  1707.                     (0 81 65) 77-0
  1708.  
  1709.     Lear Com Company
  1710.                     2440 Kipling St. Suite 206, Lakewood, CO  80215
  1711.                     (303)232-2226   Fax: (303)232-8721
  1712.  
  1713.     Logical Systems Corporation (Disassembler, Simulator)
  1714.     Micro Dialects, Inc.
  1715.                     POB 30014, Cincinnati, OH  45230
  1716.                     (513)271-9100
  1717.  
  1718.     Logisoft        Box 61929, Sunnyvale CA  94086
  1719.                     (408)773-8465  Fax: (408)773-8466
  1720.  
  1721.     L.S. Electronic Systems Design
  1722.                     2280 Camilla Rd., Mississauga, Ontario
  1723.                     Canada  L5A 2J8
  1724.                     (905)277-4893   Fax: (905)277-0047
  1725.  
  1726.     Mandeno Granville Electronics, Ltd
  1727.                     128 Grange Rd., Auckland 3, Australia
  1728.                     +64 9 6300 558   Fax: +64 9 6301 720
  1729.  
  1730.     Matra Semiconductor
  1731.                     2840-100 San Tomas Expressway, Santa Clara, CA  95051
  1732.                     (408)986-9000
  1733.  
  1734.     MetaLink Corporation
  1735.     North America   325 E. Elliot Road, Chandler, AZ  85255
  1736.                     (800)638-2423   (602)926-0797
  1737.                     Fax:  (602)926-1198
  1738.     Europe          MetaLink Europe GmbH
  1739.                     Westring 2, 8011<85614>
  1740.                     Kirchseeon-Eglharting, Germany
  1741.                     (08091)2046   Fax: (08091)2386
  1742.  
  1743.     Micro Computer Control Corporation
  1744.                     PO Box 275, 17 Model Ave., Hopewell, NJ  08525
  1745.                     (609)466-1751   Fax: (609)466-4116
  1746.                     BBS: (609)466-4117
  1747.                     Email: 73062.3336@compuserve.com
  1748.  
  1749.     Micro Future    40944 Cascado Place, Fremont, CA  94539
  1750.                     (510)657-0264   Fax: (510)657-5441
  1751.                     BBS: (510)657-5442
  1752.  
  1753.     MicroMint       4 Park St., Vernon, CT  06066
  1754.                     (203)875-2751   Fax: (203)872-2204
  1755.  
  1756.     Microtek International, Inc.
  1757.     North America   Microtek International, Inc.
  1758.                     3300 N.W. 211th Terrace, Hillsboro, OR  97124
  1759.                     (503)645-7333   Fax: (503)629-8460
  1760.     Europe          Microtek Electronics Europe GmbH
  1761.                     Starnberger Strasse 22, 82131 Gauting bei Munchen
  1762.                     Germany
  1763.                     +49(89)893139-30    Fax: +49(89)893139-50
  1764.  
  1765.     MPE: MicroProcessor Engineering Ltd.
  1766.                     133 Hill Lane, Shirley, Southampton SO1 5AF U.K.
  1767.                     +44 1703 631441   Fax: +44 1703 339691
  1768.                     Email: mpe@mpeltd.demon.co.uk
  1769.                            sales@mpeltd.demon.co.uk
  1770.                            70730.3576@compuserve.com
  1771.  
  1772.     Nohau Corporation
  1773.                     51 E. Campbell Ave., Campbell, CA  95008
  1774.                     (408)866-1820
  1775.                     (408)378-2912 (24 hr. information center)
  1776.                     Fax: (408)378-7869
  1777.  
  1778.     Offete Enterprises, Inc.
  1779.                     1306 South B Street, San Mateo, CA  94402
  1780.                     (415) 574-8250
  1781.  
  1782.     Okapi Systems   (206)258-1163
  1783.  
  1784.     Onset Computer Corporation
  1785.                     199 Main St.,  P.O. Bos 1030
  1786.                     North Falmouth, MA 02556-1030
  1787.                     (508)563-9000   Fax: (508)563-9477
  1788.  
  1789.     Orion Instruments
  1790.                     180 Independence Drive, Menlo Park, CA  94025
  1791.                     (800)729-7700   Fax: (415)327-9881
  1792.  
  1793.     Parallax, Inc.  6200 Desimone Lane, #69A, Citrus Heights, CA  95621
  1794.                     (916)721-8217
  1795.  
  1796.     Philips Microcontroller Product Group
  1797.                     811 East Arques Ave. / POB 3409
  1798.                     Sunnvale, CA  94088-3409
  1799.                     Technical documentation:
  1800.                         Sunnyvale, CA - (800)447-1500  Fax: (408)991-3773
  1801.                         Eindhoven, Netherlands - Fax: 31-40-724825
  1802.                     Technical questions:
  1803.                         Sunnyvale, CA - (408)991-3518
  1804.  
  1805.     Production Languages Corporation
  1806.                     P.O. Box 109, Weatherford, TX  76086
  1807.                     (800)525-6289   (817)599-8365   Fax: (817)599-5098
  1808.  
  1809.     Prologic Designs
  1810.                     PO Box 19026, Baltimore, MD  21204
  1811.                     (410)661-5950   Fax: (410)661-5950
  1812.  
  1813.     PseudoCorp      716 Thimble Shoals Blvd., Newport News, VA  23606
  1814.                     (804)873-1947   Fax: (804)873-2154
  1815.                     BBS: (804)873-4838
  1816.  
  1817.     Quantasm Corporation
  1818.                     19672 Stevens Creek Blvd.
  1819.                     Cupertino, CA  95014
  1820.                     (800)765-8086   (408)244-6826   Fax: (408)244-7268
  1821.  
  1822.     Raven Computer Systems
  1823.                     PO Box 12116, St. Paul, MN  55112
  1824.                     (612)636-0365
  1825.  
  1826.     Rigel Corporation
  1827.                     P.O. Box 90040, Gainesville, FL  32607
  1828.  
  1829.     Scientific Engineering Labs
  1830.                     255 Beacon St., Suite 3D, Somerville, MA  02143
  1831.                     (617)625-0288
  1832.  
  1833.     Siemens Components, Inc.
  1834.                     Integrated Circuit Division, 10950 N. Tantau Ave.
  1835.                     Cupertino, CA  95014
  1836.                     (800)777-4363  Fax: (708)296-4805
  1837.  
  1838.     Signetics Corporation (see Philips Microcontroller Product Group)
  1839.  
  1840.     Signum Systems  Mountain View, CA     (415)903-2220
  1841.                     Thousand Oaks, CA     (805)371-4608
  1842.  
  1843.     Software Science
  1844.                     3570 Roundbottom Rd., Cincinnati, OH  45244
  1845.  
  1846.     Sophia Systems  NS Bldg. 2-4-1, Nishishinjuku, Shinuku-ku
  1847.                     Tokyo 160, Japan
  1848.                     03-348-7000
  1849.  
  1850.     Speech Technology Inc., Software Division
  1851.                     837 Front Street South, Issaquah, WA  98027
  1852.                     (206)392-8150
  1853.  
  1854.     Standard Microsystems Corporation
  1855.                     80 Arkay Dr.,  Hauppage, NY  11788
  1856.                     (516)435-6000    Fax: (516)231-6004
  1857.  
  1858.     Sun Equipment Corporation
  1859.     Lodestar Electronics Corp.
  1860.                     616 Hawick Rd., Raleigh, NC  27615
  1861.                     (800)870-1955   (919)881-2141   Fax: (919)870-5720
  1862.  
  1863.     Suncoast Technologies
  1864.                     PO Box 5835, Spring Hill, FL  34606
  1865.                     (904)596-7599
  1866.  
  1867.     Sysoft SA       6926 Montagnola, Switzerland
  1868.                     (091)543195
  1869.  
  1870.     Systronix Inc.  555 S. 300 E., Salt Lake City, UT  84111
  1871.                     (801)534-1017  Fax: (801)534-1019
  1872.                     BBS: (801)487-2778
  1873.  
  1874.     URDA, Inc.      (800)338-0517   (412)683-8732
  1875.  
  1876.     US Software     14215 N.W. Science Park Drive, Portland, OR  97229
  1877.                     (800)356-7097   (503)641-8446   Fax: (503)644-2413
  1878.                     Product information available by ftp -
  1879.                        ftp.netcom.com : pub/ussw
  1880.  
  1881.     Universal Cross Assemblers
  1882.                     Canada
  1883.                     (506)849-8952   Fax: (506)847-0681
  1884.  
  1885.     Vail Silicon Tools, Inc.
  1886.                     Box 165, Pompano Beach FL  33069
  1887.                     (305)491-7443   Fax: (305)974-8531
  1888.  
  1889.     Zax Corporation
  1890.                     2572 White Road, Irving, CA 92714
  1891.                     (800)421-0982   (714)474-1170
  1892.  
  1893.     Zitek Corporation
  1894.                     1651 East Edinger Ave., Santa Ana, Ca  92705
  1895.                     (714)541-2931
  1896.  
  1897.  
  1898. 5)  8051 DOCUMENTATION
  1899.  
  1900.  
  1901. 5.1) Periodicals that cover the 8051
  1902.  
  1903.     Various magazines and journals (journals seems to be THE popular name
  1904.     for magazines these days) provide articles from time to time on the
  1905.     8051 family of microcontrollers:
  1906.  
  1907.     The Computer Applications Journal (Circuit Cellar Ink)
  1908.         - programming and construction articles
  1909.         - POB 7694, Riverton, NJ  08077-8784
  1910.         - FAX: (203)872-2204
  1911.         - Voice orders: (609)786-0409
  1912.         - On-line orders (BBS): (203)871-1988
  1913.         - Email orders: ken.davidson@circellar.com
  1914.         - $21.95, $31.95 surface Canada and Mexico,
  1915.           $49.95 air all other countries
  1916.  
  1917.     Computer Design
  1918.         - industry announcements and trends
  1919.         - One Technology Park Drive, P.O. Box 990, Westford, MA  01886
  1920.         - (508)692-0700
  1921.  
  1922.     The Computer Journal
  1923.         - programming and construction articles
  1924.         - PO Box 535, Lincoln  96648
  1925.  
  1926.     Dr. Dobbs Journal
  1927.         - programming articles, concepts, and designs
  1928.         - 411 Borel Ave., San Mateo, CA  94402
  1929.         - (415)358-9500
  1930.  
  1931.     Electronic Engineering Times
  1932.         - industry announcements and trends
  1933.         - FREE to qualified engineers and managers involved in
  1934.           engineering decisions
  1935.         - Fulfillment Dept., PO Box 9055, Jericho, NY  11753-8955
  1936.         - FAX:  (516)733-6960
  1937.  
  1938.     Electronics Now
  1939.         - construction articles
  1940.         - Box 55115, Boulder, CO  80321-5115
  1941.         - $19.97 one year
  1942.  
  1943.     Elektor Electronics
  1944.         - programming and construction articles
  1945.         - World Wide Subscription Service Ltd
  1946.           Unit 4, Gibbs Reed Farm, Pashley Road
  1947.           Ticehurst TN5 7HE, England
  1948.         - 27 UK pounds
  1949.      or
  1950.         - Old Colony Sound Lab, P.O. Box 243, Peterborough, NH 03458
  1951.         - Tel. (603)924-6371, 924-6526
  1952.         - Fax: (603)924-9467
  1953.         - $57 USA and Canada per year
  1954.  
  1955.     Embedded Systems Programming
  1956.         - programming and systems design articles
  1957.         - Miller Freeman Publications
  1958.         - 500 Howard St., San Francisco, CA  94105
  1959.         - (415) 397-1881
  1960.  
  1961.     Inquisitor Magazine
  1962.         - If you're the type that watched Gilligan's Island for its
  1963.           socio-political insights, then you'll love a new 'zine that
  1964.           just crossed my desk - Inquisitor Magazine.  It's general
  1965.           philosophy seems to be ... well, it seems to be ... uh, yeah!
  1966.           Technical in nature, bizarre, tongue in cheek, eclectic,
  1967.           electric, did I mention bizarre(?), and lots of fun.  Worth
  1968.           looking at if you like the out of the ordinary.  The moving
  1969.           force behind this magazine is Daniel Drennan, who seems to have
  1970.           suffered from an overdose of radiation from his computer
  1971.           monitor ;-).
  1972.         - Planetarium Station, P.O.Box 132, New York, NY  10024-0132
  1973.         - (212)595-8370
  1974.         - Email: inquisitor@echonyc.com
  1975.         - $16 per year (4 issues)
  1976.  
  1977.     Microcomputer Journal (formerly Computer Craft)
  1978.         - programming and construction articles
  1979.         - 76 N. Broadway, Hicksville, NY  11801
  1980.         - $29.70 one year
  1981.  
  1982.     Midnight Engineering
  1983.         - 1700 Washington Ave., Rocky Road, CO  81067
  1984.         - (719)254-4553
  1985.  
  1986.     MW Media - Product Directories
  1987.         - 8051 Product Directory
  1988.           (survey of various 8051 products)
  1989.         - Intel Development Tools Handbook
  1990.           (survey of commercial development tools for the 8051, 8096,
  1991.           and 80186 lines of Intel microprocessors)
  1992.         - This documents could very well be a "must" if you're into
  1993.           serious development using one of these chips.  If you are
  1994.           "just" a hobbyist, see how the "other half" lives.
  1995.         - other guides on Intel development tools, Embedded Intel 386,
  1996.           Intel 486/Pentium, 8051 products, Hitachi microcontroller
  1997.           development tools, AMD FusionE86, AMD 29K; low power products,
  1998.           DSP, multimedia CD
  1999.         - FREE to qualified developers
  2000.         - MW Media
  2001.         - Fairmont Plaza, 50 W. San Fernando, #675, San Jose, CA  95113
  2002.         - (408)288-4721 and (408)286-4200
  2003.         - FAX: (408)288-4728
  2004.  
  2005.     Nuts & Volts Magazine
  2006.         - A National Publication for the Buying and Selling of
  2007.           Electronic Equipment
  2008.         - 430 Princeland Court, Corona, CA  91719
  2009.         - Mailed third class, USA only:  $17.00 one year
  2010.                                          $31.00 two years
  2011.         - Mailed first class, one year only:  $34.00-USA
  2012.                                               $35.00-Canada/Mexico
  2013.         - Foreign/Air Mail - $70.00;  Foreign/Surface - $39.00
  2014.         - (800)783-4624
  2015.         - Email:  74262.3664@compuserve.com
  2016.  
  2017.  
  2018. 5.2)  Books on the 8051
  2019.  
  2020. 5.2.1)  List of books
  2021.  
  2022.     I don't have information on all of these, only that they exist.  I
  2023.     would greatly appreciate it if someone could provide a short synopsis
  2024.     and the complete book name if you are familiar with any of these
  2025.     titles.
  2026.  
  2027.     The 8051 Family of Microcontrollers
  2028.         -Richard H. Barnett
  2029.         -Prentice-Hall, 1995
  2030.         -ISBN 0-02-306281-9
  2031.  
  2032.     8051 Interfacing and Applications
  2033.         - Applied Logic Engineering
  2034.         - 13008 93rd Place North, Maple Grove, MN  55369
  2035.         - (612)494-3704
  2036.  
  2037.     The 8051 Microcontroller
  2038.         - I. Scott MacKenzie
  2039.         - Macmillan Publishing Company, 1992
  2040.         - includes schematics for a single-board computer,
  2041.           assembly-language source code for a monitor program, and
  2042.           interfaces to a keypad, LEDs, and loudspeaker.
  2043.  
  2044.     The 8051 Microcontroller
  2045.         - James W. Stewart
  2046.         - Regents/Prentice-Hall, 1993
  2047.         - $27.50, 273 pages
  2048.         - includes many interfacing examples (switches, solenoids,
  2049.           relays, shaft encoders, displays, motors, and A/D converters)
  2050.           and a chapter on top-down design method
  2051.  
  2052.     The 8051 Microcontroller: Architecture, Programming and Applications
  2053.         - Kenneth J. Ayala
  2054.         - 241 pages, soft cover
  2055.         - 5.25" diskette with assembler and simulator
  2056.         - ISBN 0-314-77278-2, Dewey 004.165-dc20
  2057.         - West Publishing Company
  2058.         - P.O. Box 64526, St. Paul, MN  55164
  2059.         - (800)328-9352
  2060.         - see review in next section
  2061.  
  2062.     Assembly Language Programming (for the MCS-51 family)
  2063.         - F. A. Lyn
  2064.         - L. S. Electronic Systems Design
  2065.  
  2066.     Basic-52 Programmer's Guide
  2067.         - Systronix, Inc. (they also sell a Basic compiler)
  2068.  
  2069.     Beginner's Guide
  2070.         - Suncoast Technologies
  2071.  
  2072.     C and the 8051
  2073.         - Thomas W. Schultz
  2074.         - Prentice Hall
  2075.         - ISBN 0-13-753815-4
  2076.  
  2077.     Data book / Handbook / Users' Guide
  2078.         - Advanced Micro Devices
  2079.         - Dallas (User's guide for the DS5000)
  2080.         - Intel
  2081.         - Philips
  2082.         - Siemens
  2083.  
  2084.     Embedded Controller Forth for the 8051 Family
  2085.         - Academic Press (I think)
  2086.         - William H. Payne
  2087.         - uses a Forth development system available on the Internet
  2088.           (see above in the Forth software section)
  2089.  
  2090.     Embedded Systems Programming in C and Assembler
  2091.         - John Forrest Brown
  2092.         - Van Nostrand Reinhold, 1994
  2093.         - 304 pages, $49.95
  2094.         - ISBN 0-442-01817-7
  2095.         - covers Motorola and Intel processors
  2096.         - includes diskette with code from the book
  2097.         - book review in Dr. Dobb's Journal, November 1994, page 121
  2098.  
  2099.     Experimenter's guide
  2100.         - Rigel Corporation
  2101.  
  2102.     Introduction to Microcontroller Design, Based on the 8051 family of
  2103.     Processors
  2104.         - Business Data Computers
  2105.         - P.O. Box 1549, Chester, CA  96020
  2106.  
  2107.     The Microcontroller Idea Book
  2108.         - Jan Axelson (of Microcomputer Journal fame)
  2109.         - features the 8052-BASIC microcontroller
  2110.         - hands-on guide with complete plans (schematics, design theory,
  2111.           program listings, construction details, etc)
  2112.         - explains how to use sensors, relays, displays, clock/calendars,
  2113.           keypads, wireless links, and more
  2114.         - 1994, 273 pages, $31.95 + shipping
  2115.         - Lakeview Research, 2209 Winnebago St., Madison, WI  53704
  2116.           (608)241-5824  Internet: 71163.3555@compuserve.com
  2117.         - contact the author at janaxel@aol.com
  2118.  
  2119.  
  2120. 5.2.2)  Book reviews
  2121.  
  2122.     Jan Axelson's review of her book:
  2123.     The Microcontroller Idea Book
  2124.  
  2125.  
  2126.        This is a hands-on guide that presents designs for use in data
  2127.        loggers, controllers, and other small-computer projects.  It
  2128.        includes complete circuit schematics and parts lists, design
  2129.        theory, example program listings, construction and debugging tips,
  2130.        and vendor listings.  Example circuits and programs are based on
  2131.        the 8052-BASIC microcontroller.  The book is loosely based on a
  2132.        series of articles I wrote for ComputerCraft magazine (now The
  2133.        Microcomputer Journal).
  2134.  
  2135.        Chapter titles:  microcontroller basics, inside the 8052-
  2136.        BASIC, powering up, saving programs, programming, inputs and
  2137.        outputs, switches and keypads, displays, using sensors to
  2138.        detect and measure, clocks and calendars, control circuits,
  2139.        wireless links, calling assembly-language routines, running
  2140.        BASIC-52 from external memory, related products
  2141.  
  2142.  
  2143.     Richard H. Barnett's summary of his book:
  2144.     The 8051 Family of Microcontrollers
  2145.  
  2146.        The book covers basic micros through complete projects using the
  2147.        8051 family as examples.  It is designed as a "lots of meat, very
  2148.        little filler" type of text, but is very well-suited for use as a
  2149.        handbook of project development using 8051 family parts.  The book
  2150.        stresses examples, both hardware and software.  The hardware
  2151.        examples are real working items including 3 complete projects in
  2152.        the last chapter.  Software examples are presented in both C and
  2153.        assembly code.  All of the program listings and other software
  2154.        examples were imported electronically to the text eliminating
  2155.        errors.
  2156.  
  2157.        For more info contact the author - barnettr@mace.cc.purdue.edu
  2158.  
  2159.  
  2160.     Richard Kendrick's review of the book:
  2161.     8051 Interfacing and Applications
  2162.     from Applied Logic Engineering
  2163.  
  2164.        IN BRIEF
  2165.  
  2166.        An excellent collection of interfacing circuits and well commented
  2167.        source code in assembly.  This is not a book for beginners as it
  2168.        assumes the user is very familiar with the architecture of the
  2169.        8051 and its registers.  A disk of assembly source code listings
  2170.        is included.
  2171.  
  2172.        CHAPTERS
  2173.  
  2174.              1    - 8051 Interfacing and Applications
  2175.              1.1  - Introduction
  2176.              1.2  - Main System Core
  2177.              1.3  - Simple Methods of User Input
  2178.              1.4  - Interfacing a 16 digit keypad to the 8031
  2179.              1.5  - Centronics Parallel Input Port
  2180.              1.6  - Centronics Parallel Output Port
  2181.              1.7  - Interfacing to the built-in Serial Port
  2182.              1.8  - Interfacing to a Dual Channel UART
  2183.              1.9  - Interfacing to an LCD
  2184.              1.10 - Bank Selection of Memory
  2185.                   - Appendix A: List of Vendors
  2186.                   - Appendix B: Connection to an External Computer
  2187.                      0.1 RS-232 Serial Connection
  2188.                      0.2 Centronics Interface Cabling
  2189.  
  2190.        COMMENTS
  2191.  
  2192.        This spiral bound book is thin (74 pages) but manages to cover a
  2193.        lot of information.  All of the sub-chapters have excellent code
  2194.        listings with full comments, partial schematic diagrams, and an
  2195.        occasional timing diagram.  The chapter on using the serial port
  2196.        is based on the MAX232 chip becoming so popular.  A table of timer
  2197.        reload values is provided to get standard baud rates but the book
  2198.        only mentions the required clock frequency of 11.0592 mHz in the
  2199.        first chapter.  It also doesn't explain why a seemingly
  2200.        non-standard crystal frequency was chosen.  The dual UART channel
  2201.        features the 2681 chip.  The LCD chapter gives a small but
  2202.        adequate explaination of the Hitachi controller chip usage on LCD
  2203.        displays and a tiny fragment of data on display characteristics of
  2204.        LCDs.  The bank selection of memory is useful showing code and
  2205.        schematic using five 62256 chips for 160K bytes of read/write
  2206.        memory.
  2207.  
  2208.  
  2209.  
  2210.     Richard Kendrick's review of the book:
  2211.     Microprocessor/Controller Design
  2212.     by Wayne P. Lichti of Business Data Computers
  2213.  
  2214.        A lame little book better bypassed.  As an introductory text,
  2215.        Kenneth Ayala's book is the winner hands down.  This book is a
  2216.        poor rehash of the same information in Intel's or AMD's data book.
  2217.        There is one code listing in the book and does little more than
  2218.        tell the reader that the 8051 family of processors exist.
  2219.  
  2220.        This book is 134 pages of wasted time.  The schematics were
  2221.        printed on a dot matrix printer and poorly reproduced.  Many of
  2222.        the sections are just a table or a paragraph with two or three
  2223.        sentences.  Use Ayala's book, you'll learn a lot more useful
  2224.        information.
  2225.  
  2226.  
  2227.     John Little's review of the book:
  2228.     The 8051 Microcontroller: Architecture, Programming and Applications
  2229.     by Kenneth J. Ayala
  2230.  
  2231.        IN BRIEF
  2232.  
  2233.        A good book for those who are already moderately familiar with
  2234.        assembly language programming and wish to learn more about 8051
  2235.        specifics.  Has many example listings, all of which are very well
  2236.        documented in terms of comments and explanations in the text. NOT
  2237.        a book for absolute beginners OR hardware hackers looking for
  2238.        circuits and applications.
  2239.  
  2240.  
  2241.        CHAPTERS
  2242.  
  2243.           1 - Microprocessors and Microcontrollers.
  2244.           2 - The 8051 Architecture.
  2245.           3 - Moving Data.
  2246.           4 - Logical Operations.
  2247.           5 - Arithmetic Operations.
  2248.           6 - Jump and Call Opcodes.
  2249.           7 - An 8051 Microcontroller Design.
  2250.           8 - Applications.
  2251.           9 - Serial Data Communication.
  2252.           A - 8051 Operational Code Mnemonics.
  2253.           B - How to Use the Assembler.
  2254.           C - how to Use the Simulator.
  2255.           D - The 8255 Programmable I/O Port.
  2256.           E - Control Registers.
  2257.  
  2258.  
  2259.        COMMENTS
  2260.  
  2261.        In his preface to the book, Mr Ayala states that that it is
  2262.        intended for "... a diverse audience. It is meant for use
  2263.        primarily by those who work in the area of electronic design and
  2264.        assembly language programming of small, dedicated computers".
  2265.        Later, he goes on to refer the reader to the manufacturer's data
  2266.        books for more information on hardware issues. This sets the tone
  2267.        for the whole book, which is very much software orientated.
  2268.  
  2269.        Anyone buying the book expecting to find reams of circuit diagrams
  2270.        and details on how to build their own 8051 driven, automated car
  2271.        assembly plant will be disappointed. In fact, most of the circuits
  2272.        and applications shown are very much conceptual, with generic,
  2273.        black-box outlines for most of the components. The single
  2274.        exception to this is a fairly complete system (8031, EPROM & RAM,
  2275.        jumper selectable memory sizes) in the chapter on microcontroller
  2276.        design.  Even then, there's no I/O shown (the txd/rxd are
  2277.        unconnected).
  2278.  
  2279.        Having said that, Mr Ayala does do a fairly thorough job of
  2280.        working through the peculiarities of the 8051, with detailed
  2281.        coverage of memory organisation, bit/byte level operations,
  2282.        timers, interrupts and, at the end of the book, a complete chapter
  2283.        on 8051 communication modes. Each area has relevant assembly
  2284.        language listings, along with a detailed explanation of the
  2285.        workings of the code.
  2286.  
  2287.        Each section also has highlighted "comment" passages which point
  2288.        out common pitfalls and reinforce critical points. Each chapter
  2289.        ends with a summary of the important points covered and a series
  2290.        of ten to twenty pertinent problems for the reader to solve. For
  2291.        the most part, the answers to the problems can be found in the
  2292.        text.  In later chapters though, the reader is asked to elaborate
  2293.        on various programming themes and to write assembly language
  2294.        programs of their own to perform various tasks. The problems range
  2295.        from the bland "Name twenty items which have a built in
  2296.        microcontroller" (Chapter 1), to the more esoteric "Compose a
  2297.        40-value lookup table that will generate a sawtooth wave using a
  2298.        D/A converter" (Chapter 8).
  2299.  
  2300.        It should be noted that the book is not aimed at the complete
  2301.        novice. For instance, although assembly language listings are used
  2302.        throughout, it is not until Appendix B that the reader finds out
  2303.        what the assembler actually does and how the listings relate to
  2304.        machine code. Even then, the complete neophyte will be left with a
  2305.        rather empty feeling, as there are pages and pages of code, the
  2306.        schematic for a (more or less) complete system and instructions on
  2307.        how to use the assembler, but no information at all on how the
  2308.        object code should be utilised (other than with the included
  2309.        simulator - see below). If you don't already know how to blow an
  2310.        EPROM, you're in trouble.
  2311.  
  2312.        The diskette which accompanies the book contains the PseudoSam
  2313.        assembler (which is used throughout) and an 8051 simulator. Both
  2314.        being intended for use on a PC (it's a measure of how fast the
  2315.        computer industry is evolving that a 5.25 inch diskette seems a
  2316.        little archaic just three years after the publication date of the
  2317.        book).  The PseudoSam assembler ran fine on my system and I was
  2318.        able to assemble several of the examples from the book and
  2319.        successfully run them on a small, home-brew 8031 system. I was
  2320.        totally unable to get the simulator to run. However, as it failed
  2321.        on several different systems I'm prepared to believe that my
  2322.        particular copy of the diskette was at fault.
  2323.  
  2324.  
  2325.        SUMMARY
  2326.  
  2327.        All in all, a recommended book for those who have previous
  2328.        assembly language experience and wish to get to know details
  2329.        relating to the 8051 microcontroller. While the internal
  2330.        architecture of the chip is covered in detail, external hardware
  2331.        and peripheral interfacing is not.  Only the basic 8051/31 is
  2332.        covered, with little mention of the other variants available.
  2333.        There are extensive listings in the text, covering routines for
  2334.        handling keyboards and displays, as well as timing loops and
  2335.        communications. A large, clear typeface ensures that all of the
  2336.        listings are completely legible. The layout and presentation of
  2337.        the book is excellent, with a consistent, unambiguous style used
  2338.        throughout.
  2339.  
  2340.  
  2341.     Tim McDonough's review of the book:
  2342.     C and the 8051: Programming for Multitasking
  2343.     by Thomas W. Schultz
  2344.  
  2345.        Schultz's book provides a brief overview of the 8051 architecture
  2346.        but is primarily a discussion of multi-tasking software in an 8051
  2347.        environment.  He presents quite a few code examples.  The examples
  2348.        and the accompanying text show comparisons of how to accomplish
  2349.        things in assembler, PLM, and C.  The C examples presented are
  2350.        based on Version 3 of the Franklin compiler but should be easily
  2351.        understandable by anyone already familiar with C.
  2352.  
  2353.        Later chapters in the book deal with more advanced topics.
  2354.        Chapters are devoted to Real-Time Ideas, Timing and Scheduling,
  2355.        Communications and Synchronization, Interrupts, Priority, and
  2356.        Context, and Distributed Systems.  The Real-Time Ideas chapter
  2357.        briefly discusses six Real Time Operating System (RTOS) kernels
  2358.        offered by several vendors.  Later in the book some examples are
  2359.        given to simple applications with and without using a RTOS.
  2360.  
  2361.        All in all, a useful addition to my technical library.  It is one
  2362.        of the few 8051 books that goes beyond the basics and would be
  2363.        particularly of interest to those contemplating their first
  2364.        non-trivial 8051 design.
  2365.  
  2366.  
  2367. 5.3)  Miscellaneous documentation on the 8051
  2368.  
  2369.     Advanced Micro Devices
  2370.         - application notes
  2371.  
  2372.     Intel Corporation
  2373.         - application notes
  2374.  
  2375.     L.S. Electronic Systems Design
  2376.         - application notes (source code on diskette and schematics)
  2377.  
  2378.     Philips Semiconductors (Signetics)
  2379.         - application notes
  2380.  
  2381.     Software Science
  2382.         - application notes
  2383.  
  2384.  
  2385. __________________________________________________________
  2386.  
  2387. I disclaim everything.  The contents of this article might be totally
  2388. inaccurate, inappropriate, misguided, or otherwise perverse - except for
  2389. my name (hopefully I got that right).
  2390.  
  2391. Copyright (c) 1995 by Russell Hersch, all rights reserved.
  2392. This FAQ may be posted to any USENET newsgroup, on-line service, or BBS
  2393.   as long as it is posted in its entirety and includes this copyright
  2394.   statement.
  2395. This FAQ may not be distributed for financial gain.
  2396. This FAQ may not be included in commercial collections or compilations
  2397.    without express permission from the author.
  2398.  
  2399. -----------------------------------
  2400. Russ Hersch - sibit@datasrv.co.il
  2401.  
  2402.  
  2403.