Issus
Well-Known Member
- Joined
- Aug 27, 2012
- Messages
- 410
- Reaction score
- 0
8-bit MCUs like PICs and Atmels work great with applications like most of ours, because the sensors generally deal with bytes anyway. If you had a 32-bit MCU you'd still have to do all of the bit shifting etc. to get the byte-level data into longs and you'd still have to wait for the sensors and the serial memory (3-5 ms per write for EEPROMS!), so I don't see a significant reason to go looking for a "faster" processor. There are tons of FREE tools available for 8-bit MCUs so from a DIY point of view it's a natural choice.
eeproms need to, like 8bit processors, be left in history where they belong Sure, they have their place... but unless you're just storing a couple of config variables there is no reason not to store a full page of flash in RAM then write it to a flash chip. A flash chip has thousands of times the size of an eeprom and is thousands, if not millions of times faster to write to.
Needing to do bitshifting really depends on the peripheral you're dealing with. If it's SPI or I2C, most modern architectures will take a 32bit variable and shift it out just fine with no clock cycle overhead.
You can get an ARM chip that is smaller, faster and has more memory/flash than an 8bit micro, for less price. Why 8 bit is still used by hobbyists is beyond me. NXP, TI, ST and Freescale all have free IDEs - several of them using CodeRed (Eclipse) with a 128k or something compile size limit. Not only do you get a real IDE (not a glorified copy of Notepad like the Arduino "IDE") - you also get realtime, on chip, in circuit debugging and state inspection. You can view the stack, inspect registers, step through code and even roll back the stack - I've love to see that done on an 8 or 16bit chip for less than $500.
ARM cortex has bought high power embedded processing well within reach of the hobbyist masses. NPX/EmbeddedArtists LPCXpresso boards are pretty much all under $35, include a SWD JTAG onboard (which can be chopped off and used separately) and have a full featured IDE. These support most of NXP's ARM Cortex family giving you something for every application. CodeRed is free for use with these, and there is an active community and heaps of examples. ST's STM32 discovery boards are cheap to - the STM32F4Discovery is $14.90 on digikey, has a SWD JTAG onboard, 1mb of flash 192k of ram and runs at 168mhz. It also includes a full IDE. IDE + JTAG + dev board (with accelerometer, microphone, audio DAC onboard) for under $15 - crazy!
An LPCXpresso will fit in most rockets, and they have breakout boards smaller than the arduino minis - with USB on chip.