Microcontrollers

Little computers on a chip. How cool. Before I got my TI, I had learned 6502 assembly language on the KIM-1 computers at University of Arizona. I was all set to build my own 6502-based computer when reality broke through, that my priorities with church and "Dungeons and Dragons" and, well, school would not permit me to get far (even though I knew some guys who had built an 8088 machine in a file cabined with a do-it-yourself card reader that they fed with Hollerith cards filched and punched at the Computer Center). Then, I decided that the 16-bit TMS9900 was more interesting than the 8-bit 6502, and the TI-99/4A appeared in our family room.

I kept watching the 6502/6800-based microcontrollers, however, trying to work up enough nerve and resources to play with them. In time, the PIC processors appeared with what seem to be superior capability relative to the HC05 etc. families from Motorola/Freescale, and a lot more manageable in a hobby lab than higher end devices.

One of the driving forces in my playing around with microcontrollers (and maybe field programmable gate arrays - FPGAs - eventually) is to do it all for cheap in my "lab" with Linux or DOS. Many microcontroller families are supported by the legendary GNU Compiler Collection, and the GNU PIC utilities are very good. I purchased an Epic parallel-port programmer from meLabs that supports many devices under DOS, and the PiKdev Integrated Development Environment (IDE) that runs under KDE in Linux also operates with the Epic programmer. I have also used the Eagle PCB development tool to create some circuit boards; it runs under Linux, and has a free cut-down version with limitations that do not greatly impede small PIC projects. See the Links sidebar for these resources.


Gallery

WDCThis is where it started for me. The Western Design Center 6502, heart of the KIM-1 or AIM-1 trainer system.6502 The 6502 family is still alive, and the WDC provides logic "cores" to embedded system companies. I note that WDC is an Arizona-based company! Link here.

FreescaleThe 6502 is actually a knock-off (or, rather, improvement) on the 6800 design. Formerly Motorola, which spun off the processor and computer parts to Freescale and the other semiconductors to On. The 6800 design lives on in the HCxx microcontroller series (which I have looked at closely but never acdtually used), the 68K family (which I have used in the Atari ST and the Motorola ExorMACS industrial computer) lives on in Coldfire, and Freescale produces PowerPC derivatives (which I have used in the Tomahawk guidance computer). Link here.

CDP1802The CDP1802 was the first CMOS microprocessor. It also had an interesting history of passing through a number of hands - RCA, Intersil, and Harris. Other outfits made it on license, such as, yes, Hughes Aircraft, as shown here. Some variants were radiation-hardened (probably including the Hughes device) for use in satellites. The Amateur Radio Relay League put together a satellite a few years ago, which used one of the few remaining rad-hard 1802s for the master computer, and asked me to write a simulator for the developers to use. I messed with the 1802 some myself, it has a VERY unique and interesting Instruction Set Architecture. There are still 1802s (and other processors in the family) to be had, and here is a updated reproduction of the COSMAC Elf computer for hobbyists.

TI LogoTMS9900The processor I've messed with most is probably the TMS9900, heart of the TI-99/4A, but the SBP9989 militarized version, as used in the TOW launcher, is in the same family. There is obviously lots of interest in the TMS9900, and they are still out there to be had, as well as "cores" for FPGAs (some open-source). MSP430I am also looking very closely at the low-power MSP430 processor, which looks like a pretty decent hobby device with good support from the open-source community. TI also produces the dominant TMS320 Digital Signal Processor family, and I have worked with the F2812 member of the family with TOW-RF. The C2000 series is as much microcontroller as DSP, with on-chip memory and peripherals. TI also produces an ARM microcontroller. Link here.

TMX1795I knew TI was the first with the 16-bit TMS9900 microprocessor. Here's a well-researched article making the argument that TI was the first with a microprocessor. The honor is usually given to Intel for the 4004, and granted the 4004 actually was made available commercially, and there is some evidence that TI cheated and used improperly-provided documentation from Intel to develop theirs, but it does look like the TMX1795 was first by maybe a few weeks.

MicrochipMy current favorite microcontroller is the Microchip PIC, which is available in an astonishing range of word widths, packages, memory sizes, and especially peripheral sets. Link here.

AtmelAtmel AVRAtmel makes a series of low-power, high performance AVR microcontrollers and ARM-based "AT" processors. In the hobby literature, the AVR is the second most-favored device, and from what I see in the datasheets, it is a very capable and easy-to-use controller. We've got a work project that I've designated an AVR for, and depending on our experiences, the AVR may become my preferred device. Link here.


PROJECTS: