choosing MCU for a product
Russell McMahon email (remove spam text)
From: John Waters <HOTMAIL.COM> john_fm_waters
>I'm designing a small electronic product with a MCU controlling a special
>circuit that will feed in short data strings occasionally (some PINs
>actually). The MCU needs to check the PIN against a pre-recorded table, if
>matching record is found, it will activate another circuit. The application
>is not too complex, however it will go volume manufacturing, hence it is
>cost sensitive. We also plan for future enhancement, so expandability is
>also an issue.
>I'm now considering which MCU is the best to use in this product, PIC, 8051
>or others. Can anyone give a suggestion?
Does this mean that the "simple authentication device" didn't work ??? :-)
You'll get a zillion replies on this so I'll just cover key points.
You don't say what the nature of your enhancements are - eg more users/IDS
or more switches or a display or ...
Obviously YOU have to have some idea what these ate to make a good choice.
This product is PROBABLY simple enough that the best processor is the
cheapest one you can find that you are happy to use and that you are able to
develop code for and produce in initially small volumes. ie some of the
Asian sourced 4 bit cpu's are very very cheap but they tend to think mask
ROM and development tools are often arcanely priced.
The PIC 16c550 is pretty cheap (was under $US0.70 in moderate volume a while
The Zilog Z8plus is very capable and costs around the same price and has a
"real" emulator for $US100. Also I think it has a free C but maybe not.
If you want many users you may need external eerom with any of the cheaper
Consider cpu's which allow you to use spare Flash code space as cpu
read/write data storage.
If extensibility means complex extra programs look for larger code space.
If extra i/o look at i/o pins OR look at serial i/o ICs but you really
shouldn't have to be that desperate.
Decide early on if you want features which hardware would make easy. eg
UART, A2D, D2A, I2C LCD drive etc. All these can be done in software but IF
they are available in hardware at no cost penalty you will make life easy
The Atmel AVR family have some nice IO capabilities, good cpu capabilities,
largish flash program memories and reasonable pricing.
8051 is fine if you are already familiar with it. Bit long in the tooth but
less so than PIC :-).
Made in many variants by many people so you can probably get a version that
closely suits your hardware needs.
Scenix (Ubicom) SX is worth a thought. Not cheap and power hungyish BUT the
raw speed means you can add 'virtual peripherals" in software later with
much more ease than with most other processors. You can retrospectively add
some quite real analog capabilities with a minimum of hardware additions due
to the very high MIPS available (even though they are rather dumb MIPS). A
number of the more complicated Scenix "virtual peripherals" are not really
practical on the PIC because it just doesn't have enough throughput. You can
almost always do anything somehow if you are clever enough but the Scenix
allows you to do it dumbly :-).
At least consider the TMS430 family. Good I/O. Many variants. Low cost entry
level development systems. Superb low power modes.
There are many other possible processors. The ability for you to do the job
comfortably is probably more important than the features of any one
Consider availability of high level languages that you are familiar with at
a reasonable price for your budget.
In all the above, watch availability !!!!!!!!!!!!!!!!!!!!
http://www.piclist.com hint: The PICList is archived three different
ways. See http://www.piclist.com/#archives for details.
See also: www.piclist.com/techref/index.htm?key=choosing+mcu+product
You must be a member of the
piclist mailing list
(not only a www.piclist.com member) to post to the