Hi
I have an OM1621-G3S/80331A 16x2 LCD with green backlit that I'm trying to hook up to my Arduino UNO rev3
The datasheet for the LCD is located here:
http://www.channel-microelectronic.de/ch_html_de/lcds/pdf/om1621spec_r1.pdf
From datasheet:
pin 1 LED+
pin 2 LED-
pin 3 Vss
pin 4 Vdd
pin 5 V0
pin 6 RS
pin 7 R/W
pin 8 E
pin 9 DB0
pin 10 DB1
pin 11 DB2
pin 12 DB3
pin 13 DB4
pin 14 DB5
pin 15 DB6
pin 16 DB7
Back in the past (around 2003) I hooked it up to the paralell-port using this schematic:
This doesn't appear to be a HD44780 compatible LCD, but ST7066U / S6A0070A according to the datasheet.
I couldn't find a schematic for this controller hooked up to arduino, so I used the HD44780 schematic as a basedrawing.
All I get is the background to light up, no characters at all
I hooked it all up this way:
OM1621 16x2 green backlit
Pin No. Symbol Description Connection (on Arduino)
1 LED+ LED Anode 5V+
2 LED- LED Cathode 22/52/82 ohm > GND (should be 100 ohm pot)
3 VSS Ground Potential GND
4 VDD Power Supply 5V+
5 V0 Contrast Adjustment Voltage Leg 2 10K Pot (Leg 1->18Kohm->5V+, Leg 3->GND)
6 RS Register Select Signal Pin 12
7 R/W Read/Write Select Signal Pin 10
8 E Data Read/write enable Pin 11
9 DB0 Code I/O Data LSB Pin 9
10 DB1 Code I/O Data 2nd Bit Pin 8
11 DB2 Code I/O Data 3rd Bit Pin 7
12 DB3 Code I/O Data 4th Bit Pin 6
13 DB4 Code I/O Data 5th Bit Pin 5
14 DB5 Code I/O Data 6th Bit Pin 4
15 DB6 Code I/O Data 7th Bit Pin 3
16 DB7 Code I/O Data MSB Pin 2
I do not have a 100 ohm pot so I tried using 22/56/82 ohm resistor instead. That shouldn't make a difference, or?
The code I'm using is this:
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
//Works for QC1602
//LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//Test for OM1621 (currently not working)
//LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7)
LiquidCrystal lcd(12, 10, 11, 9, 8, 7, 6, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("Hello World!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
Any suggestions?
EDIT: I tried to look into the -2 to +2 contrast adjusting. If I measure with my multimeter, I can only see positive voltage on V0. So maybe thats why I don't see any characters? How do I accomplish a negative voltage on my circuit?
Best regards
Niclas Gustafsson