LCD met i2c werkt niet juist

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 19
Geregistreerd: 28 Nov 2015, 15:46

LCD met i2c werkt niet juist

Berichtdoor Royy » 12 Dec 2015, 13:54

Ik heb het volgende puntje waar ik niet uit kom, ik heb een 0x27 16,2 lcd schermpje, met bijbehorende i2c

nu heb ik deze code geupload:
cpp code
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init(); // initialize the lcd
// Print a message to the LCD.
lcd.backlight();
lcd.print("Hello, world!");
}
void loop()
{
}


het gekke is nu, dat ik alleen de letter H geprint krijg, en dus ello, world! wordt niet geprint.
als ik de cursor op een andere positie zet en dan print, krijg ik ook alleen de H, dus ik kan wel alle posities printen, alleen ik moet dus per letter de code gaan schrijven.

Is hier een oorzaak voor aan te wijzen?
en wat kan ik er aan doen?

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: LCD met i2c werkt niet juist

Berichtdoor nicoverduin » 12 Dec 2015, 18:07

waar heb je de library vandaan? we hebben dit probleem al eens meer hier gezien.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 19
Geregistreerd: 28 Nov 2015, 15:46

Re: LCD met i2c werkt niet juist

Berichtdoor Royy » 14 Dec 2015, 01:08

ik heb hem hier vandaan:
http://www.geeetech.com/wiki/index.php/ ... LCD_Module

ik heb ook die van fmalpartida geprobeerd, die doet in het geheel niks, ook had ik nog een andere maar die gaf alleen maar foutmeldingen, die heb ik gelijk gewist.

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: LCD met i2c werkt niet juist

Berichtdoor shooter » 14 Dec 2015, 10:59

probeer eens hoofdletters, wellicht gebruik je een font die geen kleine letters kent.
paul deelen
shooter@home.nl

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: LCD met i2c werkt niet juist

Berichtdoor nicoverduin » 14 Dec 2015, 11:57

Dat zou wel raar zijn. Default ondersteunen die dingen een standaard ascii set.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: LCD met i2c werkt niet juist

Berichtdoor nicoverduin » 14 Dec 2015, 12:02

Ik wist dat ik het eerder had gezien :)

Zie : http://forum.arduino.cc/index.php?topic=361411.0

Met de oplossing.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 11
Geregistreerd: 25 Nov 2015, 13:48

Re: LCD met i2c werkt niet juist

Berichtdoor bartou » 15 Dec 2015, 18:08

Hey Hallo,

Ik had exact hetzelfde probleem.
Ik heb de NewliquidCrystal_1.3.4 library gebruikt.
En daarbij de sketch aangepast.
lcd.begin();
I.p.v.
lcd.init();
http://arduinoforum.nl/viewtopic.php?f=25&t=1521
Zie het verschil met de eerste sketch aangehaald en de laatste in dit topic.
Gewoon met Arduino 1.6.6
Worked fine for me!

Succes!

Groeten van Bart.

Berichten: 8
Geregistreerd: 23 Nov 2015, 23:30

Re: LCD met i2c werkt niet juist

Berichtdoor juzo » 17 Dec 2015, 23:44

Hoi,

Ik had hetzelfde probleem met een display. Het vreemde was als ik het programmeerde op het werk de software dan ging het fout. Maar thuis ging het wel goed op mijn desktop pc op het werk gebruikte ik een laptop. Na enig zoekwerk kwam ik erachter dat op de laptop de nieuwste versie software van arduino progRammer stond, terwijl thuis nog een oudere versie stond. De nieuwe software op de laptop verminkte de display software, het vreemde was dat de hardware met de in en uitgangen wel goed draaide.

Berichten: 19
Geregistreerd: 28 Nov 2015, 15:46

Re: LCD met i2c werkt niet juist

Berichtdoor Royy » 20 Dec 2015, 01:43

.
Laatst gewijzigd door Royy op 20 Dec 2015, 01:46, in totaal 1 keer gewijzigd.

Berichten: 19
Geregistreerd: 28 Nov 2015, 15:46

Re: LCD met i2c werkt niet juist

Berichtdoor Royy » 20 Dec 2015, 01:46

inmiddels heb ik het een en ander geprobeerd en tot nu toe krijg ik met deze sketch in elk geval het begin gebeuren, het scherm knippert 3 keer, daarna krijg ik alleen maar op de bovenste rij allemaal blokken ( volledig gevulde pixels)


cpp code
/* YourDuino.com Example Software Sketch
16 character 2 line I2C Display
Backpack Interface labelled "A0 A1 A2" at lower right.
..and
Backpack Interface labelled "YwRobot Arduino LCM1602 IIC V1"
MOST use address 0x27, a FEW use 0x3F
terry@yourduino.com */

/*-----( Import needed libraries )-----*/
#include <Wire.h> // Comes with Arduino IDE
// Get the LCD I2C Library here:
// https://bitbucket.org/fmalpartida/new-l ... /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 )-----*/
/*-----( Declare objects )-----*/
// set the LCD address to 0x27 for a 16 chars 2 line display
// A FEW use address 0x3F
// Set the pins on the I2C chip used for LCD connections:
// addr, en,rw,rs,d4,d5,d6,d7,bl,blpol
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address

/*-----( Declare Variables )-----*/
//NONE

void setup() /*----( SETUP: RUNS ONCE )----*/
{
Serial.begin(9600); // Used to type in characters

lcd.begin(16,2); // initialize the lcd for 16 chars 2 lines, 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(0,0); //Start at character 4 on line 0
lcd.print("Hello, world!");
delay(1000);
lcd.setCursor(0,1);
lcd.print("HI!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.clear();
lcd.setCursor(0,0); //Start at character 0 on line 0
lcd.print("Use Serial Mon");
lcd.setCursor(0,1);
lcd.print("Type to 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 ) */

Volgende

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 46 gasten