16×2 LCD Display Contrast

A few weeks ago, I put in an order to Jameco for some parts that’ll help me complete some of the projects in Michael McRoberts‘s book Beginning Arduino.

One of the more interesting components was this KST1602B 16×2 LCD Display.  I dunno about you all, but ever since I saw one on a digital calculator, I’ve wanted to bend one of these bad boys to my will… and now I have! … well, sorta.

The first time I wired this up, I got a totally blank screen. I had assumed that I did *something* wrong and went through and re-verified that things were connected right.  Finally, I eyed the resistor that I had been using on the “Contrast” pin on the LCD.  (V0 in the case of this one).  I had chosen a resistor close to that described in the book, but meh… so I pulled out the potentiometer from my last project and hooked that up to pin V0.  It turns out that the resistance needs to be a lot more than what I had expected!

To the left you can see an image with three contrast settings on the potentiometer.  The top one is max (about 10k ohms) the middle one was maybe 8k ohms and the last one represents anything less than say, 7k ohms.

When you look at the data sheet PDF, the section called “Adjusting Display Contrast” seems to suggest that you can put a resistance of between 20 and 50k ohms… that’s a HUGE range considering that what you can go from visible to NO contrast in less than 2k ohms.  I feel like the contrast range should be a little more linear… but that’s just me.