Newsgroups: comp.robotics
Path: brunix!sgiblab!spool.mu.edu!howland.reston.ans.net!europa.eng.gtefsd.com!uunet!caen!destroyer!nntp.cs.ubc.ca!newsserver.sfu.ca!sfu.ca!lye
From: lye@fraser.sfu.ca (Bill Lye)
Subject: Re: 68HC11 vs. 80C186?
Message-ID: <lye.748737309@sfu.ca>
Sender: news@sfu.ca
Organization: Simon Fraser University, Burnaby, B.C., Canada
References: <22SEP199315521150@bambam.gsfc.nasa.gov> <1993Sep22.215107.18305@leland.Stanford.EDU>
Date: Wed, 22 Sep 1993 22:35:09 GMT
Lines: 62

yihsiu@leland.Stanford.EDU (Yi-Hsiu Wang) writes:

>Hi,

>  Could anyone tell me what's the difference between Motorola 68HC11 and
>Intel 80C186? I saw a lot of people in this group using 68HC11, is there
>any reason you choose 68HC11? Any information will be highly appreciated.

>Yi-Hsiu
>StarLab/Stanford Univ

Speaking from experience with both...

A 68HC11 is an 8-bit data, 16-bit address microcontroller from Motorola,
with an instruction set similar to the older 68xx (6801, 6805, 6809)
parts.  It has several on-chip resources (Digital I/O, Timers, PWM, A/D
RAM, some sort of ROM, and synchronous and asynchronous communications
channels) and can easily be integrated into single-chip applications.
Good freeware assembly-language tools available, and several good
comercial C compilers.

An 80C186 is a step up from the 8086.  It is an embedded processor sold
by Intel, and has the same instruction set as the 8086, with the additional
"real-mode" instructions of the 286.  It has the same 16-bit data and
20-bit address bus structure of the 8086.  The 80C188 is an 8-bit data
bus version, just like the 8088 (of PC & PC/XT fame).  For embedded systems,
it is much easier to use than the 8086.  It has an on-chip timer system,
interrupt controller, DMA controller, and clock generator.  For DRAM
operation, it also has an integrated DRAM refresh generator.  However,
it has no on-chip I/O, nor does it have any memory on-chip.  There is,
however, extra circuitry for selecting external memory with a minimum
of extra logic.  Can be programmed using most DOS compilers and assemblers,
but requires a linker that knows about locating code in absolute memory.

Probably the reason lots of people use the HC11 is that is CHEAP, has some
pretty good free (or at least quite inexpensive) deveopment tools, and
has a lot of on-chip resources that work well for robotics.  Of course,
the ready availability of quality 6811 boards (The Miniboard and the 6.270)
has helped too!

The C186 is not as accessable.  It is harder to set up, its tools cost
more, and robotics & control resources have to be added externally.
The timers can be configured for PWM or pulse timing, but I've not seen
a C186 design that uses either.  It does, however, run at higher speeds,
have more accessable memory, and can be hooked up to a floating-point
co-processor (C187).  The fact that it looks a lot like a DOS box helps
a lot where software is run on multiple platforms and also helps with the
learning curve (somewhat).

Summary:

HC11:  Similar to Motorola's other 8-bit micros, very small (parts count)
       designs possible, good selection of on-chip resources for robotics
       and control applications.  Usually programmed in Assembly.

C186:  Similar to 8086/286, more parts required than HC11 design, fewer
       than 8086 design.  Small set of on-chip resources, easily 
       expanndable.  Usually programmed in High-Level Language.
-- 
Bill Lye, lye@sfu.ca
ENSC Undergrad
Simon Fraser University
