Jim's
Tutorials

Spring 2013
course
navigation

Propeller

I'm considering the Parallax Propeller P8X32A, 8-core 32-bit MCU.
Wiki:
Object exchange (public SPIN libraries):
Brief description of the chip: http://www.parallax.com/portals/0/help/P8X32A/QnaMobile/Advanced/Content/QnaTopics/QnaP8X32AIntro.htm
Using the P8X32A Quickstart board:

The Propellers are programmed with a custom language called SPIN, and there are two big IDE/toolchains for it: http://www.parallaxsemiconductor.com/quickstart1 . There's also the unofficial, and currently beta, PropellerGCC, which is what I'm leaning towards now. It implements a pretty good chunk of the standard C library, the digital IO is very similar to things like AVR-GCC or MSP430-GCC, and the multiple cores (or cogs as the Propeller calls them) are handle in a very neat way (using 'threads'). The main download comes with a compiled toolchain and an IDE called SimpleIDE, which has nice compiler/loader integration.
The biggest issue I see with using the Propeller is that it has none of the subsystems you get with a standard mixed signal MCU these days, like an ADC, UART, etc. This means that I'd need an external ADC, and the propeller already requires an external EEPROM for non-volatile program storage, so the board is already looking pretty dense. In terms of serial protocols like TTL, SPI, I2C, the standard way to implement them on the propeller is to load cogs with device drivers. Each cog has its own clock divider (I'm pretty sure...), and there is memory shared between them all, so this is a pretty fast and efficient way to do it.
http://cs.marlboro.edu/ courses/ spring2013/jims_tutorials/ alex/ Propeller
last modified Tuesday March 12 2013 2:04 pm EDT