Recensisci!
Diventa un recensore per ricevere prodotti gratuiti o scontati!
Iscriviti
Se desideri, puoi effettuare un'iscrizione gratuita al forum per entrare nella nostra community.
Ricerca Avanzata
Pubblicità Adsense
Answers
Se necessiti di aiuto, clicca il pulsante "Cerco Aiuto" (disponibile anche per i non iscritti).
Ultimi argomenti
» Gioco con Arduino: Sniper Words
Da Admin Mer Gen 17, 2018 4:25 pm

» Mi si è bruciano Arduino, come mai?
Da Admin Mer Gen 17, 2018 4:24 pm

» Recensione hub USB per PC di Aukey (esterno o autoalimentato)
Da Admin Dom Gen 14, 2018 10:28 pm

» accesso remoto via web arduino porta bloccata
Da Admin Dom Gen 14, 2018 10:26 pm

» Recensione robot programmabile RCMoment
Da Admin Dom Gen 14, 2018 5:30 pm

» E' possibile aumentare la velocità dei servomotori con Arduino?
Da Admin Dom Gen 14, 2018 5:28 pm

» Come realizzare un impianto antincendio con Arduino - v1.0
Da Admin Ven Gen 12, 2018 3:02 pm

» Noleggio stampanti multifunzioni Brescia
Da Admin Mer Gen 10, 2018 2:19 pm

» Timer relè con arduino
Da falcio1515 Lun Gen 08, 2018 2:33 pm

I postatori più attivi del mese
Admin
 
falcio1515
 
misterxfiles
 
HardAngelDark
 
Answers
 
FrankyFRD42
 
sergio52
 

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 : 182
Crediti Crediti : 278
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 Admin 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
Admin
♔ Amministratore

Messaggi Messaggi : 4253
Crediti Crediti : 11861
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 19
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 : 182
Crediti Crediti : 278
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 : 182
Crediti Crediti : 278
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 Admin il Lun Set 12, 2016 2:20 pm

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

Messaggi Messaggi : 4253
Crediti Crediti : 11861
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 19
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 : 182
Crediti Crediti : 278
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