Hello. I am trying to display to an LCD using my Arduino UNO but nothing is being displayed to the screen. I am afraid that my UNO is fried. The library I am using for the example code is called "BigCrystal" on the Arduino IDE library search bar. Here is the code. I have a photo of what the LCD is doing attached.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <BigCrystal.h>
LiquidCrystal_I2C lcd(0x27); // Set the LCD I2C address
BigCrystal bigCrystal(&lcd);
void setup() {
bigCrystal.begin(16, 2); // Set to your LCD size
}
void loop() {
// Displays all characters is big front from 0x00 (space) to 0x5A (Z)
for (char c = 0x20; c <= 0x5A; c++) {
// Clear out the maximum width so that pars of wider
// characters are removed
clear();
bigCrystal.writeBig(c, 0, 0);
bigCrystal.setCursor(7, 0);
bigCrystal.write(c);
delay(1000);
}
}
void clear() {
for (int i = 0; i < 5; i++) {
bigCrystal.setCursor(i, 0);
bigCrystal.print('hello');
bigCrystal.setCursor(i, 1);
bigCrystal.print('hello');
}
}
But you’ll note, the original example you started with had a single space character ‘ ‘ in those two statements, because they’re blanking the first 5 character positions…
You’ll find one in your examples folder in the Arduino IDE. It has only rarely failed me. Check for:
Using this I was able to verify that the I2C address is 0x27. I would also like to mention that there is no potentiometer on the back of the LCD to control the brightness.
The LCD doesn’t normally have one, rather it’s onboard the I2C interface, usually a separate small board. If that’s missing, then there’s something amuck.
Post a link to technical information on that display. Also post a picture of the front showing what the 4 pins are. They could be I2C or SPI type of interface. Without something to control the contrast it would do what you are seeing.
Ahh. A built-in I2C interface. Not commonly seen here.
If the labels on that 4 pin connection are consistent with I2C, and I expect they will be, then documentation is necessary, to find out how they’re avoiding the need for contrast adjustment.
The Address jumpers (A0/1/2) also are indicative of I2C. At any rate, yes, let’s see the other side as well, there may be hints there.
Maybe. I don’t know this display, but the ones I’ve worked with have this more as a problem of initialization than contrast. When the display is correctly initialized and the contrast voltage is wrong, all rows show the same.