LCD scherm met IIC module

Ik ben hier aan het zoeken hoe ik een LCD scherm met IIC module aan de praat moet krijgen.

Ik heb een youtube filmpje gevolgd ,

en, ik heb die code die ze op het laatste geven , eens ingegeven.
Helaas , het werkt niet, en ik zou wel eens willen weten, hoe dit komt.
Ik heb namelijk de nodige libraries aan arduino toegevoegd,
maar, nog steeds heeft de compiler een hele reeks aan problemen ....

Om een libary te verkrijgen, ga ik naar deze google code site,

https://code.google.com/p/arduino/source/browse/trunk/libraries/Wire/Wire.h?r=1092
Ik copy de code, en plak het in de notebook.
(Ik geef hem de juiste naam, en plaats hem in libraries van Arduino);
Dit zou het toch moeten doen ?
Of niet ??

Dit zijn de foutmeldingen die ik kreeg ...

'LiquidCrystel_I2C' does not name a type

In file included from LCDSchermI2C.ino:5:
D:\Documenten\Arduino\libraries\Wire/Wire.h:3: error: expected unqualified-id before numeric constant
In file included from c:/program files (x86)/arduino/hardware/tools/avr/lib/gcc/../../avr/include/inttypes.h:37,
from D:\Documenten\Arduino\libraries\Wire/Wire.h:95,
from LCDSchermI2C.ino:5:
c:/program files (x86)/arduino/hardware/tools/avr/lib/gcc/../../avr/include/stdint.h:159: error: 'int8_t' does not name a type
c:/program files (x86)/arduino/hardware/tools/avr/lib/gcc/../../avr/include/stdint.h:213: error: 'int8_t' does not name a type
In file included from C:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino/WString.h:29,
from C:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino/Print.h:26,
from D:\Documenten\Arduino\libraries\LiquidCrystal_I2C1602V1/LiquidCrystal_I2C.h:6,
from LCDSchermI2C.ino:8:
c:/program files (x86)/arduino/hardware/tools/avr/lib/gcc/../../avr/include/avr/pgmspace.h:215: error: 'int8_t' does not name a type
In file included from D:\Documenten\Arduino\libraries\LiquidCrystal_I2C1602V1/LiquidCrystal_I2C.h:7,
from LCDSchermI2C.ino:8:
D:\Documenten\Arduino\libraries\Wire/Wire.h:3: error: expected unqualified-id before numeric constant
LCDSchermI2C:11: error: 'LiquidCrystal_I2C' does not name a type
LCDSchermI2C.ino: In function 'void setup()':
LCDSchermI2C:22: error: 'myDisplay' was not declared in this scope
LCDSchermI2C.ino: In function 'void loop()':
LCDSchermI2C:38: error: 'myDisplay' was not declared in this scope
LCDSchermI2C:43: error: 'myDisplay' was not declared in this scope
LCDSchermI2C:48: error: 'myDisplay' was not declared in this scope

(Om eerlijk te zijn, ik verdenk die labraries, maar ik weet niet waar ik andere zou gaan uithalen ...)

Alle hulp is natuurlijk welkom :slight_smile:

LiquidCrystal_I2C.cpp (8.64 KB)

LiquidCrystal_I2C.h (3.35 KB)

Wire.h (2.34 KB)

LCDSchermI2C.ino (3.09 KB)

driesdep:
'LiquidCrystel_I2C' does not name a type

Deze boorschap krijg je als je een type variabele benoemd die niet bestaat. Als het goed is heb je de library wel geïmporteerd in jouw sketch via het menu. Als dat het geval is, moet het niet:

LiquidCrystal_I2C

ik heb geprobeerd dit uit te laten,
maar dan gaat hij natuurlijk ook een probleem geven aan myDisplay ...

Volgens mij ligt het probleem ergens anders hoor ...
Mss eens kijken naar de Vid waar ik het gevonden heb , als je daar eventueel opmerkingen
over heeft ?

Alvast bedankt .
dries

Hoi driesdep, welkom.

driesdep:
Ik heb namelijk de nodige libraries aan arduino toegevoegd,
maar, nog steeds heeft de compiler een hele reeks aan problemen ....

Om een libary te verkrijgen, ga ik naar deze google code site,

Google Code Archive - Long-term storage for Google Code Project Hosting.
Ik copy de code, en plak het in de notebook.
(Ik geef hem de juiste naam, en plaats hem in libraries van Arduino);
Dit zou het toch moeten doen ?
Of niet ??

Niet dus.
Aangezien je niet hebt vermeld dat je in libraries een nieuwe map hebt gemaakt met dezelfde naam als de library die je aanroept, moet ik aannemen dat je dat niet gedaan hebt.
Daar word naar gezocht en als dat niet word gevonden gaat het dus niet goed en krijg je deze foutmeldingen.
Elke library moet dus in zijn eigen map staan, niet in de hoofdmap genaamd 'libraries' .

ja, dat heb ik toch gedaan hoor.
Daarvan was ik op de hoogte
(Ziemaar in de bijlage)

Groeten
dries

Welke versie van de IDE heb je ?
Als dat de laatste versie is (1.0.5), dan kun je daarin libraries importeren.
Dat doe je dan door te klikken op Sketch - Import Library te klikken (of Sketch - Bibliotheek Importeren voor NL versie).
Verder is die map die je hebt laten zien, een map in "mijn documenten".
Dat is niet de juiste plaats (ik weet ook niet waarom die map bij installatie word aangemaakt).
Je moet 'm in de installatiemap zetten.
Hier staat ie (win 7 home pro 64bits) in C:\Program Files (x86)\Arduino\libraries
Vermoedelijk ga jij die map op een vergelijkbare plaats terugvinden.

Bedankt voor de reply mas3 )

Ik heb mijn IDE bekeken, en dit ziet er ok uit
(1.0.5 r2)
Maar van die libraries wist ik niet dat die verkeerd stonden,
hoewel, ik had die ook geimporteerd zodat die in de lijst van bibliotheken stonden.

Dus zit ik nog met hetzelfde probleem.

Ik heb nog eens een screenshot gemaakt
(mss is het dan ook duidelijker voor jullie. )

Het programma staat hierboven in mijn topic ...

Alvast bedankt,
dries

Wat ik hier zie ,en ook niet begrijp, is dat LiquidCrystal_I2C in het zwart blijft,
en niet naar bruin gaat (wat normaal zou moeten , of niet ?)

Terwijl in mijn libraries, duidelijk de bibliotheek is toegevoegd ...
Of heb ik dit fout ?

Je hhebt liquidCrystal_I2C nu op 2 plekken staan. 1 x in de Arduino libraries en 1x in de eigen libraries. Verder heb ik jouw programma ff geladen in mijn omgeving en werkt prima. Dit programma dus:

// ****** Created by : Depoortere Dries
// ****** Date July 2014

#include <Wire.h>                          // Iclude de I2C bibliotheek
// Wire.h is een standaard bibliotheek

#include <LiquidCrystal_I2C.h>               // Dit is een speciale bibliotheek
// Een bibliotheek dat komt met het display

LiquidCrystal_I2C myDisplay(0x27, 16, 2);
// Dit initialiseert the LCD in het objectnaam "myDisplay"
// We zetten het LCD adres op 0x27 (Dit is een HEX adres, die binair gelijk is aan 0b100111.
//Dit is het busadres voor de PC8574 port extender chip die de display aanstuurt
// en difinieert de hoeveel kolonnen(16), en rijen (2) er zijn op het display.
// Dit verteld the methode in de bibliotheek , met welk display we te maken hebben.

// **************************************************************************

void setup() {
	myDisplay.init();                // instaleren van de LCD
																	 // Dit zet de karakters canvas op 5x8 pixels en nog wat hardware gespecifieert.
																	 // Nota ; INIT() methode start ook de I2C bus. Bvb wanneer het niet moet .
																	 // Een aparte "wire.begin() ; statement in de setup.

	myDisplay.backlight();            // Dit doet de backlights aan
	myDisplay.print(" Make Course ");
	delay(1000);                      // wacht 1 seconde
}
// ************************* Main loop ************************************************

void loop() { // laten we spelen met enkele van de methodes inclusief in de bibliotheek.

	for (int i = 0; i < 10; i++) {
		myDisplay.scrollDisplayRight();
		delay(200);
	}
	for (int i = 0; i < 10; i++) {    //en terug naar links
		myDisplay.scrollDisplayLeft();
		delay(200);
	}

	// Dit zet de cursor naar de tweede rij en het 9e karakter in deze rij
	myDisplay.setCursor(1, 0);

	// Dan printen we aan de cursorpositie

	myDisplay.print(" awsome ");

	// checkout naar de andere interessante methodes om het bedienen van dit LCD dat
	// inclusief in de library zitten

	// Load the.h library file in de tekst editor and lees de lijst van methodes...
	// Meeste van hen zijn zelf uitleggend, meer details vind je in de .cpp file

}

Hierbij heb ik de standaard Wire library gebruikt van Arduino en de LiquidCrystal_I2C ooit in een grijs verleden binnengehaald..
Ik zou eerst zorgen dat je libraries geschoond blijven van dubbele zaken. Dus Wire verwijderen uit jouw eigen documents/arduino/liraries folder en LiquidCrystal_I2C verwijderen uit jouw Arduino/hardware library.

Bedankt nicoverduin ,

ik heb deze libraries verwijdert, en nu loopt het programma idd wel :slight_smile: ,

Nooit gedacht dat dit kon de oorzaak zijn ...

Bedankt aan iedereen die me hielp

Dries