Well, Chuck said it best, but I'll add this:
You get fewer
components, lower cost, easier maintainability and tweakability,
increased flexibility, the possibility for a reusable design...how is
this a bad thing?
OK, let's look at those advantages :
'Fewer COmpoentns'. OK, I'll grant that there are probably few bits to
pick up and solder to the PCB (although it's close -- as I mentioned last
night, there's a CUTS decoder using a single 16 pin TTL chip). But there
are certainly more 'devices' -- individual transistors, etc -- in the
microcontrolelr solution. Now, my expoerience suggests that while a
single chip is moree reliable than making the same circuit from many
chips or discrete transistors, a complex chip _is_ less reliale than a
simple one. So while trying to build the 'microcontroller' solution using
TTL (full adders, lateches for the registers, etc) would be considerably
less reliuable than the single chip microcontroller, I also suspect that
a single TTL chip, or a few of them, would be more reliable than the
microcontorller
'Lower cost'. I could make the flipant answer and say that my junk box
contains plenty of TTL chips and no microocntrollers. But I'd rather
point out that the cheapest solution is not necessarily the best, and
that this idea of always cutting the cost to the minimum is one reason
that I don't buy many new products.
'Easier maintainabilty and tweakaility'. Surely you jest here! It is a
lot easier to find a fault in a circuit when you can actually put the
'scope probe on a particular signal. Darn it, with a single-chip
microcontroller, you can't normally trace the firmware. Repairing it is a
nightmare unless you have the firmware (prefereably as source code). I'd
much rather change a 2-lead passive compoennt than reprogram a chip (and
it'll be quicker...)
'Increased fleximbility'. The original discussion was to decode cassette
tones. Why do I want to add any more features. I prefer a design that
does one job, and does it well.
'Reuseable Design'. Again 'Why?'. I'd much rather come up with the
_right_ design (IMHO) for each problem eather than try to kludge in a
previous design just ecause I have it. This quickly leads to the idea of
bodging together off-the-shelf units, which is another thing I dislike...
-tony