liquid crystal 1602

Hoi ik heb een arduino uno en een liquid crystal 1602 met vier aansluitpinnen vcc,grnd,sda en scl

aangesloten via voorbeelden op internet vcc 5 volt grnd massa sda op a4 scl op a5 de laatste 2 heb ik ook al gewisseld

liquid crystal liberary gedownload

hello world sketch gedowload

dan geupload met arduino ide geen foutmeldingen ,

backlight gaat aan en 1 rij met zwarte blokjes meer niet

wie kan mij helpen

Heb je met de potmeter ook het contrast geregeld?

ja ook geprobeerd kan hem draaien tot helemaal geen blokjes of tot zwarte blokjes maar tekst krijg ik niet

mvg manfred

De liquid crystal library is bedoeld voor LCDs met een parallelle interface. Jouw scherm heeft een I²C interface, dus je zult een andere library moeten vinden. Waar heb je het display gekocht? Bij online verkopers staat er vaak een link naar libraries (of code) die compatibel zijn met het product.

Pieter

oke is al iets duidelijker tja gekocht bij aliexpress ga ik daar nog eens effe kijken

mvg manfred

Gewoon ff googeen op liquidcrystal_i2c

oke probleem 1 opgelost hij det het

volgend probleem heb 2 sketches samengevoegd (zal altijd beter kunnen)

nou doet hij de humidity wel in het display zetten maar de temperatuur krijg ik 2 cursors naast elkaar met elk 3 horizotale streepjes

de sketch is

#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x3F,2,1,0,4,5,6,7);
#include “DHT.h”

#define DHTPIN 2 // what pin we’re connected to
#define DHTTYPE DHT22 // DHT 22 (AM2302)
#define uv 3 // uv licht
#define fan 4 //pin waar warmtebron op zit
#define pump 5 //pin waar de pomp op zit

int minHum = 80; // minimale vochtichheid
int maxhum = 95; //maximale vochtigheid
int minTemp = 22.50; // minimale temp.
int maxtemp = 24.50; // maximale temp.
DHT dht(DHTPIN, DHTTYPE); // dht sensor
void setup()
{ pinMode( uv, OUTPUT);
pinMode(fan, OUTPUT); // wat te doen met pin 4
pinMode(pump, OUTPUT); // wat te doen met pin 5
Serial.begin(9600);
dht.begin();

lcd.setBacklightPin(3,POSITIVE);
lcd.setBacklight(HIGH);
lcd.begin(16, 2);
lcd.clear();
}
void loop()
{
lcd.setCursor(0,1);
lcd.print("");
delay(1000);
lcd.setCursor(0,1);
lcd.print("");
// Wait a few seconds between measurements.
delay(2000);

// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds ‘old’ (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius
float t = dht.readTemperature();

// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t)) {
Serial.println(“Failed to read from DHT sensor!”);
return;
}
digitalWrite(uv, HIGH);
delay(2000);

digitalWrite(uv, LOW);
if ( t < minTemp) //temp lager dan 24 lamp aan

digitalWrite(fan, HIGH); // lamp aan
if ( t > maxtemp) // temp hoger dan 27 lamp uit
digitalWrite(fan, LOW); { // lamp uit
}
if (h < minHum ) // hum. lager dan 80% pomp aan
digitalWrite(pump, HIGH); // pomp aan
if (h > maxhum ) // hum. hoger dan 95% pomp uit
digitalWrite(pump, LOW); //pomp uit
{
}

lcd.print(“Humidity: “); // print humidity naar seriele monitor
lcd.print(h);
lcd.print(” %\t”);
lcd.print("Temperature: “); // print temperatuur naar seriele monitor
lcd.print(t);
lcd.println(” *C ");

Hoi manfredwetzels.

Na een herinstallatie van de IDE op mijn laptop (omdat de oude HDD dood was), werkte een en ander bij mij ook niet meer zoals het vroegâh werkte. Daarom heb ik toen eens gespeeld met de library van forumlid bperrybap (klik !). Dat is een fantastisch ding, want die zoekt zelf uit wat er is aangesloten, en hoe. Daar was ik eerst wel sceptisch over, maar dit was het ideale moment om het te proberen. En voor mij werkte het perfect. Als je een recente IDE hebt, dan kun je m gewoon als library downloaden via het menu.

Hiervoor gebruikte ik de I2C library van F.Malpartida (die vind je met deze naam en de tekst i2c), en ook daarover was niets te klagen hoor. Maar de nieuwere van Bill vind ik mooier (en die kan je instellen zodat ie veel sneller werkt, mocht je dat nodig hebben).

[edit] Graag code in [code] [/code] tags, dank u. [/edit]

Die gekke tekens komt omdat je lcd.println() gebruikt. Je moet gewoon print gebruiken

Thanks voor alle antwoorden

ik heb het probleem gevonden ik had een regel op de verkeerde plaats staan en daardoor schreef hij alles achter elkaar en daar de liquid crystal maar 16 tekens kan afbeelden zag je de rest niet

mvg manfred