TI's MSP430
- Low power. AVR fans sometimes argue about whether the MSP430 or some AVR models are better, but regardless it cannot be denied that one thing the MSP430 does well is manage power. Especially for remote sensing capabilities, low power draw is a major advantage.
- C programming. I prefer C in this setting myself, and find it comfortable. Other MCUs can also be done in C, so this is not a unique feature to the MSP430, but a benefit nonetheless.
- 16 bit processing. A lot of research situations require computation done on measurements. If the computation is to be done in the hardware, 16 bit processing is much nicer than the 8 bits available in other common, low-cost MCUs. It also simplifies the operation of the chip to an extent.
- Built in peripherals. For the scientist, it helps to not have to worry about connecting and interfacing lots of different components. Consolidating ADC, DAC, memory, clocks, timers, comparators, and other useful tools into one chip makes design simpler, more compact, and more robust.
- Simpler architecture. The MSP430 uses a von Neumann architecture, which is easier to understand than the Harvard architecture used in PIC and AVR. While outside the black box this makes little difference, for the scientist it's simpler to understand, leading to better designs over all.
- Flash memory. This is a feature commonly found in most modern MCUs, but is regardless an important feature, namely for its reusability. A laboratory can become quite cluttered with old instruments and scrounged tools. Careful design of MCU devices can make them reusable in ways and places not originally intended, and reprogramming the chip is easy.
TI has published a booklet describing the MSP430, its features and uses, as well as the types of chips available. This document can be found on TI's website (slab034u.pdf, last tested 25 Nov 2011). TI also has a great deal of useful documentation, examples, and tips. Most of these can be found in pdf format with a filename similar to the one linked above. Whenever possible, I will cite the document filename with a link to make it clear where the information is coming from.
First Project
With a clear path established, it helps to also set some clear goals and targets. This blog will not detail the specific use of the MSP430 in my research, but rather the experiments and tests I do in learning how to use this microcontroller. Many of the projects will likely be geared toward learning to use particular features or understanding particular characteristics. With that background established, I'll move on to more specific uses and designs as I find things to do with the chip that would be fun, educational, and useful.
Keeping all of that in mind, the current goal is to use the MSP430 in an instrument that makes a simple measurement periodically and transmits the data to a computer via USB, where it is logged for analysis. For simplicity, I think I will do something that requires a single voltage measurement, and examine the life of a standard consumer battery. Some topics I expect to cover in the near future include:
First Project
With a clear path established, it helps to also set some clear goals and targets. This blog will not detail the specific use of the MSP430 in my research, but rather the experiments and tests I do in learning how to use this microcontroller. Many of the projects will likely be geared toward learning to use particular features or understanding particular characteristics. With that background established, I'll move on to more specific uses and designs as I find things to do with the chip that would be fun, educational, and useful.
Keeping all of that in mind, the current goal is to use the MSP430 in an instrument that makes a simple measurement periodically and transmits the data to a computer via USB, where it is logged for analysis. For simplicity, I think I will do something that requires a single voltage measurement, and examine the life of a standard consumer battery. Some topics I expect to cover in the near future include:
- powering the MCU
- UART/SPI/I2C
- interfacing to USB
- interfacing to transducers
- ADC/DAC
- crystals and clocks
If some of these terms are unfamiliar, don't worry; I plan to explain each clearly as I come to the different topics in later posts. Beyond this list, I expect to eventually look into LAN and wireless interfaces, radio transmission and reception of data (telemetry), low power modes, interrupts, JTAG, memory usage, LCD/VFD interfaces, PCB design, and GPS and other various transducers as I develop other side projects. If I get ambitious, I may even look into more advanced designs using a 32 bit processor such as the ARM Cortex. But that's very much getting ahead of myself.
If you've found this blog looking for help, I hope you'll find some of what you need here. If you have experience with this type of work, I hope you'll comment, correct, or suggest whatever comes to your mind freely. TI has put together a very nice and fairly inexpensive chip for us, and I think we'll find that it's an ideal environment for developing new scientific tools.
If you've found this blog looking for help, I hope you'll find some of what you need here. If you have experience with this type of work, I hope you'll comment, correct, or suggest whatever comes to your mind freely. TI has put together a very nice and fairly inexpensive chip for us, and I think we'll find that it's an ideal environment for developing new scientific tools.