The following projects have been designed
and programmed by me. I just thought I would share some of the things
I have played around with in the hope that it might help someone else.
I have been very interested with battery operated designs for a while now.
I discovered the MSP430 a couple of years ago and have been fascinated
by how little power the device requires to run. I have run it without
any power hooked up to the power pins just the power it received via
the I/O pins. I wouldn't recommend this but it did work.
I have used the MSPGCC compiler a bit but I purchased the AQ430 compiler
and have been happy with it for the most part. There have been a couple
of glitches but the author(s) are very good to support their product.
That is the biggest reason I purchased this compiler is the support.
So, there you have it. Here is a list of the projects I have worked on.
Out of I/O on your Microcontroller? 8/24/08
Are you running out of I/O on your Microcontroller? Seems like I'm always
running out. There are never enough pins to attach the parallel display the 3x3
keyboard and the UART and SPI ports. Then you need another UART port and
end up running a timer based port. Does this sound familier to you? But, wait
theres more. Your boss comes to you and says we absolutely must know the
temperature inside the box and outside and we have to keep a log of these
temperatures. Now you are looking at adding an I2C bus to handle some serial
flash and the temperature sensors. You go back to your boss and ask him for a
bigger part to do this. But he says marketing wants to keep the COGs as low as
possible. Impossible you say?
Well there is are a pair of small chips that can save the day. They are very
inexpensive and can be run with just 5ish I/O pins. They are the 74HCT595 and
74HCT597. These parts are serial to parallel and parallel to serial chips. You
can attach a clock a data out and data in and be able to read and write 8 or 16
or 24 or even 32 I/O's. I wouldn't go much beyond 32 as this is a serial process
anyway. These parts are easy to bit bang and are very low power.
I have used these chips more than once and they are a great way to interface to
displays and keypads. Anything that runs at human speeds are good candidates
to be run this way. Each chip is capable of 8 bits so to get more than 8 bits the
chips have to be daisy changed. Depending on the number of chips you have
daisy changed you will need to clock them that many times to get the data from
or to all the chips. You could also hook up each chip separately but that would
require more pins and that is exactly what we are trying to save.
It is also a good way to do conversions from 3.3 volt microcontrollers to 5 volt
peripherals as you usually don't need a level shifter going from 3.3 volt to 5 but
you need it going from 5 volt to 3.3. With these chips you only need to down shift
one pin. and this is easy with a voltage divider. See the schematic of the
Sparkfun logic level converter.