recently added:

ABC music

links (this site):

home
email me
show source

links (other sites):

buienradar
python

Hippos Technical Systems BV - Larry Myerscough


These pages contain information about my family, my company, my hobbies and myself.
hide surround


High speed SPI communication with Texas Instruments MSP430 microcontroller

Background

This project represents a coming together of two activities:
  • I had been introduced to the Texas Instruments MSP430 Ultra-Low Power Microcontroller family by an old client. I was impressed by the potential of this and even more impressed by the cost of the EZ430 development kit. (hardware + software) - so much so that I immediately ordered this kit together with a few spare target boards. Just two days and 45 US dollars later I had the kit up and running. Of course, in order to properly evaluate any hardware, it helps to have some specific implementation goal...
  • In a recent project I had been responsible for some test and diagnostic software for a sensor device which was interfaced via SPI. Normal SPI traffic was handled asynchronously; the internal performance of the sensor was not affected by the speed of the SPI transfers. For test and diagnostics, however, synchronous transfers were required. Anything more than a handful of word transfers per mainloop of the sensor's internal microcode was likely to compromise its real-time operation. [This is a deliberately vague summary - to cite the full details might compromise client confidentiality.] The client had adopted the Cypress EZ-USB chip to interface between this sensor and PC-based driver/test software. This does not possess a hardware SPI interface. The best one can do is to use the UART in raw 8-bit mode. Unfortunately this entails sofware-wise reversing the order of the 8 bits within each byte. Even if this is done by a lookup table and is overlapped as much as possible with the actual hardware transfer, this still limits the SPI transfer speed to about 1MHZ, whereas the sensor itself can handle 2MHz acc. to spec. - in practice probably much more...

Hence the formal goal of this project is to find out just how fast the EZ430 can communicate over SPI with the sensor. (Alongside this, is the informal goal of keeping busy in my chosen field of expertise during while taking a few months between paid assignments.)

First Impressions

To someone who has wrestled with some rather clumsy microcontroller hardware architectures in the past, the MSP430 is like a breath of fresh air. The implementation reflects the fact that SPI, RS232 I2C etc. are just the same sort of signal bits dancing to different tunes - without sacrificing any run-time efficiency or programming simplicity.
... to be completed! ...
This Panel on the Right is used for local navigation - not yet fully implemented as you can see!