I started a project using a standard HD44780 display, wired to an Arduino UNO. That, of course, exhausted a full seven data lines, which in the course of the development, left me short of UNO pins to do all other desired tasks. So I bought an LCD display with an I2C module attached, and, after some library confusion, I got it working. It worked with a library said to be for 1602 LCD's.
So here's my question. I have a number of previously purchased HD44780 displays, and, to be compatible with my library, I want to buy just the 1602- compatible I2C modules to solder to the LCD's. The LCD's I own now do have an apparent model number on the back, but nothing about 1602.
So, what is 1602, and how do I ascertain compatabilty of an HD44780 LCD with this 1602 standard?
I used my first I2C interface this week so I'm not sure of what's available. What do you mean by "I want to buy just the 1602- compatible I2C modules to solder to the LCD's. "? MAS has pointed out that the 16 02 specifies the character array but what do you mean by "I2C modules"? Can you provide a link to the ones you're considering?
I'm not sure what MAS means by "you can do with 4 and most Arduino sketches do" unless this is a reference to something other than a parallel interface or he's not counting the EN and R/S signals. Maybe I've missed an important alternative but I've been using 6 pins for my interfaces. Like you, I needed some of those output pins that my 4 bit parallel LCD interface was using.
The approach I took was to get some PCF 8574 I/O expander chips. I paid $1.00 each from Newark although I'm sure you can find them cheaper. They provide a two wire interface and, by use of address selection pins, can be programmed to 8 different I2C addresses.
So, what is 1602, and how do I ascertain compatabilty of an HD44780 LCD with this 1602 standard?
Some form of the term 1602 shows up as in part number of many LCDs that have 2 rows of 16 characters. It also shows up in the part number of serial adapters originally designed for those LCD modules as well.
The exact same controller, an HD44780 or equivalent, is used for most of the parallel character mode LCd modules that are currently available regardless of their configuration, 16x2, 16x1, 8x2, 40x2, 16x4 etc. Furthermore there is absolutely no way to inform the HD44780 of which type of device it is driving. The only difference between driving one LCD and driving another concerns the relationship between the memory address in the controller and the location of the corresponding character on the screen. For more than you need to know about this relationship you can follow the LCD Addressing link at http://web.alfredstate.edu/weimandn.
The bottom line is that any serial controller that is physically able to control one parallel character mode LCD of any configuration should be able to control any other parallel character mode LCD. You may have to tinker with the library to get the addressing to work the way you expect.
I have made no mention of the backlight because that is a whole different bucket of worms. There are no standards for the backlight and all bets are off concerning the compatibility there.