Seguimi su Youtubue
Iscriviti
Se desideri, puoi effettuare un'iscrizione gratuita al forum per entrare nella nostra community.
Ricerca Avanzata
Pubblicità Google AdSense
Answers
Se necessiti di aiuto, clicca il pulsante "Cerco Aiuto" (disponibile anche per i non iscritti).
Ultimi argomenti
» libreria LiquidCrystal.h e LiquidCrystal_ I2C
Da papat Mar Ago 08, 2017 11:56 am

» libreria LiquidCrystal.h e LiquidCrystal_ I2C
Da papat Dom Ago 06, 2017 12:02 pm

» TOP 5 oggetti che perdi spesso
Da Poderak Gio Lug 13, 2017 4:26 pm

» arduino e ethernet shield tutorial 3
Da mariogori Ven Lug 07, 2017 8:52 pm

» Arduino comandato da cellulare
Da Poderak Ven Lug 07, 2017 6:17 pm

» Simulatore di navi: Traino nave in avaria - European Ship Simulator
Da Poderak Sab Lug 01, 2017 1:16 pm

» arduino e ethernet shield tutorial 3
Da Poderak Gio Giu 29, 2017 8:05 pm

» Farming Simulator 2018 logo
Da Poderak Ven Giu 23, 2017 3:29 pm

» Codice display a 7 segmenti - Arduino
Da fulvio Ven Giu 02, 2017 10:00 am

I postatori più attivi del mese
papat
 


ERRORE LiquidCristal _I2C

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso

ERRORE LiquidCristal _I2C

Messaggio Da papat il Dom Set 11, 2016 5:32 pm

in questo sketch ho un errore su  lcd init,puoi aiutarmi?

Codice:
// libraries definition
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "RTClib.h"
 
 
 
// frequency musical notes
#define NOTE_C6  1047
#define NOTE_C3  131
#define NOTE_G3  196
 
// pins definition
int levelSensorPin = 0;
int moistureSensorPin = 1;
int audioPin = 2;
int soggyLEDPin = 3;
int moistsoilLEDPin = 4;
int drysoilLEDPin = 5;
int pumpLEDPin = 6;
int pumpPin = 7;
 
// variables
int levelSensorValue;       // stores the level sensor values
int moistureSensorValue;    // stores the moisture sensor values
int j = 0;
 
// system messages
const char *string_table[] =
{  
  "     Welcome! =)",
  "   Tank LOW level",
  "      Dry soil",
  "     Moist soil",
  "     Soggy soil",
  "The water pump is on",
  "   ArduinoByMyself",
  "   Watering System",
  "    Please wait!"
};
 
// objects definition
RTC_DS1307 RTC;
LiquidCrystal_I2C lcd(0x27,20,4);
 
 
void setup(){
  // serial initialization
  Serial.begin(9600);
 
  // LCD initialization
  lcd.init();         
  lcd.backlight();     // with Backlight
  lcd.clear();         // clearscreen
 
  // Wire initialization
  Wire.begin();
 
  // RTC initialization
  RTC.begin();
  if (!RTC.isrunning()){
    // date and time adjust as the PC computer date and time
    RTC.adjust(DateTime(__DATE__, __TIME__));
  }
 
  // Arduino pins initalization
  pinMode(audioPin, OUTPUT);
  pinMode(soggyLEDPin, OUTPUT);
  pinMode(moistsoilLEDPin,OUTPUT);
  pinMode(drysoilLEDPin,OUTPUT);
  pinMode(pumpLEDPin,OUTPUT);
  pinMode(pumpPin,OUTPUT);
 
  // LCD initial messages
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print(string_table[6]);
  lcd.setCursor(0,1);
  lcd.print(string_table[7]);
  lcd.setCursor(0,3);
  lcd.print(string_table[0]);
  // initialization delay
  delay(5000);
}
 
 
void loop(){
 
 
  // RTC parameters definition
  DateTime myRTC = RTC.now();
  int H = myRTC.hour();
  int M = myRTC.minute();
  int S = myRTC.second();
 
  // call Clock Function
  //RightHour();
 
  // reads the sensors
  levelSensorValue = analogRead(levelSensorPin);
  moistureSensorValue = analogRead(moistureSensorPin);
 
  // if low water level: plays the low level alarm
  if(levelSensorValue > 600){
    // system messages
    lcd.clear();
    RightHour();
    lcd.setCursor(0,3);
    lcd.print(string_table[1]);
    // plays the alarm sound
    for(int i=0;i<2;i++){
      tone(audioPin, NOTE_G3, 200);
      delay(200);
      tone(audioPin, NOTE_C3, 200);
      delay(200);
      noTone(audioPin);
    }
  }
 
  // check the moisture range
  if(moistureSensorValue >= 700){
    // in case of dry soil:
    // system messages
    lcd.clear();
    RightHour();
    lcd.setCursor(0,3);
    lcd.print(string_table[2]);
    // lights up the correct LED
    digitalWrite(drysoilLEDPin,HIGH);
    digitalWrite(moistsoilLEDPin,LOW);
    digitalWrite(soggyLEDPin,LOW);
    // plays the alarm sound
    tone(audioPin, NOTE_C6, 100);
    delay(250);
    noTone(audioPin);
  }
  if((moistureSensorValue < 700) && (moistureSensorValue >= 300)){
    // in case of moist soil:
    // system messages
    lcd.clear();
    RightHour();
    lcd.setCursor(0,3);
    lcd.print(string_table[3]);
    // lights up the correct LED
    digitalWrite(drysoilLEDPin,LOW);
    digitalWrite(moistsoilLEDPin,HIGH);
    digitalWrite(soggyLEDPin,LOW);
    delay(250);
  }
  if(moistureSensorValue < 300){
    // in case of soggy soil:
    // system messages
    lcd.clear();
    RightHour();
    lcd.setCursor(0,3);
    lcd.print(string_table[4]);
    // lights up the correct LED
    digitalWrite(drysoilLEDPin,LOW);
    digitalWrite(moistsoilLEDPin,LOW);
    digitalWrite(soggyLEDPin,HIGH);
    delay(100);
  }
 
  // if the soil is dry and if it is the right time: turn on the pump for 1 minute
  if((H == 16) && (M == 50) && (S == 00)){
    while(moistureSensorValue >= 700){
      // system messages
      lcd.clear();
      RightHour();
      lcd.setCursor(0,1);
      lcd.print(string_table[8]);
      lcd.setCursor(0,3);
      lcd.print(string_table[5]);
      // turn the pump on
      digitalWrite(pumpPin,HIGH);
      digitalWrite(pumpLEDPin,HIGH);
      delay(10000);
      // if the soil is not moist so far
      // reads the moisture sensor once more
      moistureSensorValue = analogRead(moistureSensorPin);
    }
    // turn the pump off
    digitalWrite(pumpPin,LOW);
    digitalWrite(pumpLEDPin,LOW);
  }
 
}
 
// Real Time Clock Function
void RightHour()
{
  DateTime Now = RTC.now();
  String clock_date = "  Date: ";
  String clock_hour = "   Time: ";
 
  int _day = Now.day();
  int _month = Now.month();
  int _year = Now.year();
 
  clock_date += fixZero(_day);
  clock_date += "/";
  clock_date += fixZero(_month);
  clock_date += "/";
  clock_date += _year;
 
  int _hour = Now.hour();
  int _minute = Now.minute();
  int _second = Now.second();
 
  clock_hour += fixZero(_hour);
  clock_hour += ":";
  clock_hour += fixZero(_minute);
  clock_hour += ":";
  clock_hour += fixZero(_second);
 
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print(clock_date);
  lcd.setCursor(0, 1);
  lcd.print(clock_hour);
 
  delay(500);
}
 
 
String fixZero(int i)
{
  String ret;
  if (i < 10) ret += "0";
  ret += i;
  return ret;
}
avatar
papat
Maker

Messaggi Messaggi : 171
Crediti Crediti : 257
Reputazione Reputazione : 3
Data d'iscrizione Data d'iscrizione : 17.10.15
Età Età : 70
Località Località : montalbano ionico

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: ERRORE LiquidCristal _I2C

Messaggio Da Poderak il Dom Set 11, 2016 9:25 pm

Ciao, ricorda di inserire il codice nel TAG code:
Codice:
[code][/code]

Non ho ben capito il problema. Che cosa ti dice Ciao!?
avatar
Poderak
♔ Amministratore

Messaggi Messaggi : 4196
Crediti Crediti : 11726
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 18
Località Località : Brescia

Vedi il profilo dell'utente http://www.wikiinfo.net

Tornare in alto Andare in basso

Re: ERRORE LiquidCristal _I2C

Messaggio Da papat il Dom Set 11, 2016 9:38 pm

si ferma su lcd init la inea rosa nello sckecth,poi liquidCristal_I2c i seguito adesso non lo ricordo
avatar
papat
Maker

Messaggi Messaggi : 171
Crediti Crediti : 257
Reputazione Reputazione : 3
Data d'iscrizione Data d'iscrizione : 17.10.15
Età Età : 70
Località Località : montalbano ionico

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: ERRORE LiquidCristal _I2C

Messaggio Da papat il Dom Set 11, 2016 9:43 pm

whitin this context
avatar
papat
Maker

Messaggi Messaggi : 171
Crediti Crediti : 257
Reputazione Reputazione : 3
Data d'iscrizione Data d'iscrizione : 17.10.15
Età Età : 70
Località Località : montalbano ionico

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: ERRORE LiquidCristal _I2C

Messaggio Da Poderak il Lun Set 12, 2016 2:20 pm

Ho visto che la parentesi del loop non si chiude Ciao!
avatar
Poderak
♔ Amministratore

Messaggi Messaggi : 4196
Crediti Crediti : 11726
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 18
Località Località : Brescia

Vedi il profilo dell'utente http://www.wikiinfo.net

Tornare in alto Andare in basso

Re: ERRORE LiquidCristal _I2C

Messaggio Da papat il Lun Set 12, 2016 3:37 pm

ho risolto era la libreria liquidCrystal_I2c che non era quella giusta.Ciao Grazie
avatar
papat
Maker

Messaggi Messaggi : 171
Crediti Crediti : 257
Reputazione Reputazione : 3
Data d'iscrizione Data d'iscrizione : 17.10.15
Età Età : 70
Località Località : montalbano ionico

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto


 
Permessi di questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum