tekochip, thanks for that post. It is good to see someone who actually tries both of the alternatives and understands the difference. When moving to 32-bit, there are just more options. In addition, the compiler builders may make some assumptions in moving to 32-bit that one could not afford at the 8-bit level. This is also a weakness of the open source model. I have heard this situation before, albiet not between two processors, but between two compilers. When producing code for PC's or higher-end microprocessors it is not a big deal if the compiler is not all that effecient. When programming microcontrollers, it is.
Since about 30% of the cost of a chip is the package, you will not get more than 20 pins for 30 cents. If you want to drive an LCD and need lots of GPIO pins, be prepared to pay 4 times that sum. By the way, NXP have M0 core devices on the market for less than 1$ already.
Most of my work is in small to medium-sized appliances, I've used 32 bit cores in a few places, but the venerable 8 bit machines continue to improve in performance too. Recently I had to crunch some graphics quickly and simply assumed that I use an Cortex Arm, but I was tempted by the Silicon Labs 8051. I decided to build the code in each core and see where my best performance would be. To my surprise the Silicon Labs outperformed the Cortex. As I looked at the disassembly, I could see that the real loser was the GCC compiler I used with the Cortex. For the Silicon Labs part I had used Keil's 8051 compiler, which produced very tight code, but on the Cortex I was using the GCC compiler from the development kit.
The point being that the design solution is more than just how many bits the core has. A poor instruction set or compiler will quickly erode away the gains made in processing power, so always power up those development kits and crunch some code to see what the real world performance is.
A new service lets engineers and orthopedic surgeons design and 3D print highly accurate, patient-specific, orthopedic medical implants made of metal -- without owning a 3D printer. Using free, downloadable software, users can import ASCII and binary .STL files, design the implant, and send an encrypted design file to a third-party manufacturer.
For industrial control applications, or even a simple assembly line, that machine can go almost 24/7 without a break. But what happens when the task is a little more complex? That’s where the “smart” machine would come in. The smart machine is one that has some simple (or complex in some cases) processing capability to be able to adapt to changing conditions. Such machines are suited for a host of applications, including automotive, aerospace, defense, medical, computers and electronics, telecommunications, consumer goods, and so on. This discussion will examine what’s possible with smart machines, and what tradeoffs need to be made to implement such a solution.