Saturday, February 20, 2010

Arduino Project #2 - LCD Thermometer

I blew some cash on a pile of electronic components so I could do fun things with my Arduino. One of those was a small LCD display that I was eager to muck around with. I am thoroughly entertained by having an LCD because it makes the Arduino totally portable and capable of displaying information for me - rather than blinking and LED or changing its color to show changes in some variable.

So first I had to solder up the connections from the LCD board so I could connect them to the Arduino. This was no simple task for a rookie-solderer at a 1mm pitch... The only hookup wire I have is stranded and the pads had holes that were too small for the full size of the wire. So I had to cut out three of the strands from the wire and then put some heatshrink on the ends to make sure the little stubs didn't cause shorts across the pins. They aren't very pretty but I think for a prototyping board I did ok.

Displaying anything to and LCD requires six inputs/outputs, a +5 voltage supply, a variable voltage supply (for contrast control via a potentiometer), and of course a good ground connection. Once all the wires were soldered to the board I was stuck trying to figure out how to make the damn thing do something. I messed around with it for about two hours the first night before finally breaking down, dismantling the whole thing, posting my questions to the Arduino forum and going to bed.

This morning, there were some great replies that answered all my questions. My problem was two-fold. One, there are three control wires. One that tells the display you are about to write something, one that enables the writing, and one that tells the display controller if you are reading from it or writing to it. I wasn't sure what to do with the read/write pin so I had left in unconnected... My Arduino brethern gracefully informed that this pin needs to be grounded if it's not being used. So, I set up that connection, fired up the board - and still just a bunch of filled boxes - no text. So I started to play with the contrast and lo and behold I had the contrast so high that I couldn't see the text...

After playing with displaying a few messages I hooked up the thermistor from my last project and made the whole thing into an overly complicated thermometer. Really. Why am I so excited about a 50 dollar thermometer? Well, for one thing I built the damn thing myself which is pretty kickass. Another thing is it provides temp readouts in real-time to two (sometimes four - but I think that's a bug) decimal places... Also, did I mention that I built it?

Here are some photos:

Arduino Thermometer

One of these projects I'll get around to figuring out the blogger interface well enough to combine my pictures and text. But who am I kidding, no one reads this anyway...

No comments:

Post a Comment