Last active
January 10, 2018 17:41
-
-
Save tegila/54e35e5c23af3c898fb8 to your computer and use it in GitHub Desktop.
QC2004A PCF8574AT 20x4 LCD DISPLAY
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// I2C Scanner | |
// Written by Nick Gammon | |
// Date: 20th April 2011 | |
#include <Wire.h> | |
void setup() { | |
Serial.begin (115200); | |
// Leonardo: wait for serial port to connect | |
while (!Serial) | |
{ | |
} | |
Serial.println (); | |
Serial.println ("I2C scanner. Scanning ..."); | |
byte count = 0; | |
Wire.begin(); | |
for (byte i = 8; i < 120; i++) | |
{ | |
Wire.beginTransmission (i); | |
if (Wire.endTransmission () == 0) | |
{ | |
Serial.print ("Found address: "); | |
Serial.print (i, DEC); | |
Serial.print (" (0x"); | |
Serial.print (i, HEX); | |
Serial.println (")"); | |
count++; | |
delay (1); // maybe unneeded? | |
} // end of good response | |
} // end of for loop | |
Serial.println ("Done."); | |
Serial.print ("Found "); | |
Serial.print (count, DEC); | |
Serial.println (" device(s)."); | |
} // end of setup | |
void loop() {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* YourDuino.com Example Software Sketch | |
20 character 4 line I2C Display | |
Backpack Interface labelled "LCM1602 IIC A0 A1 A2" | |
terry@yourduino.com */ | |
/*-----( Import needed libraries )-----*/ | |
#include <Wire.h> // Comes with Arduino IDE | |
// Get the LCD I2C Library here: | |
// https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads | |
// Move any other LCD libraries to another folder or delete them | |
// See Library "Docs" folder for possible commands etc. | |
#include <LiquidCrystal_I2C.h> | |
/*-----( Declare Constants )-----*/ | |
//none | |
/*-----( Declare objects )-----*/ | |
// set the LCD address to 0x20 for a 20 chars 4 line display | |
// Set the pins on the I2C chip used for LCD connections: | |
// addr, en,rw,rs,d4,d5,d6,d7,bl,blpol | |
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address | |
//-- Minha unica alteração foi na linha acima onde mudei de 0x20 para 0x3F (endereço que encontrei com o i2c.scanner ;) | |
/*-----( Declare Variables )-----*/ | |
//none | |
void setup() /*----( SETUP: RUNS ONCE )----*/ | |
{ | |
Serial.begin(9600); // Used to type in characters | |
lcd.begin(20,4); // initialize the lcd for 20 chars 4 lines and turn on backlight | |
// ------- Quick 3 blinks of backlight ------------- | |
for(int i = 0; i< 3; i++) | |
{ | |
lcd.backlight(); | |
delay(250); | |
lcd.noBacklight(); | |
delay(250); | |
} | |
lcd.backlight(); // finish with backlight on | |
//-------- Write characters on the display ---------------- | |
// NOTE: Cursor Position: CHAR, LINE) start at 0 | |
lcd.setCursor(3,0); //Start at character 4 on line 0 | |
lcd.print("Hello, world!"); | |
delay(1000); | |
lcd.setCursor(2,1); | |
lcd.print("From YourDuino"); | |
delay(1000); | |
lcd.setCursor(0,2); | |
lcd.print("20 by 4 Line Display"); | |
lcd.setCursor(0,3); | |
delay(2000); | |
lcd.print("http://YourDuino.com"); | |
delay(8000); | |
// Wait and then tell user they can start the Serial Monitor and type in characters to | |
// Display. (Set Serial Monitor option to "No Line Ending") | |
lcd.setCursor(0,0); //Start at character 0 on line 0 | |
lcd.print("Start Serial Monitor"); | |
lcd.setCursor(0,1); | |
lcd.print("Type chars 2 display"); | |
}/*--(end setup )---*/ | |
void loop() /*----( LOOP: RUNS CONSTANTLY )----*/ | |
{ | |
{ | |
// when characters arrive over the serial port... | |
if (Serial.available()) { | |
// wait a bit for the entire message to arrive | |
delay(100); | |
// clear the screen | |
lcd.clear(); | |
// read all the available characters | |
while (Serial.available() > 0) { | |
// display each character to the LCD | |
lcd.write(Serial.read()); | |
} | |
} | |
} | |
}/* --(end main loop )-- */ | |
/* ( THE END ) */ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It worked for my display! In my case the adrress was 0x27. Thanks!