Arduino

davi01

Nuovo Utente
67
8
Buonasera a tutti, vi scrivo perché non so più veramente dove sbattere la testa, ho provato a prendere un programma scritto per un arduino mega e adattarlo ad un arduino uno ma mi da l'errore che vi allego in foto, qualcuno mi potrebbe dare una mano?

Grazie mille in anticipo Davide ;)
 

Allegati

  • Cattura.JPG
    Cattura.JPG
    19.5 KB · Visualizzazioni: 78

marcusfenixx

Utente Attivo
375
65
CPU
i7 4790k
Scheda Madre
Gygabyte z97x gaming 3
HDD
ssd kingston v300 e barracuda 7200 1 tb
RAM
hyperfury 2400 mhz cl11
GPU
r9 280
Audio
soundblaster zx
Monitor
asus vs 248h
PSU
Cooler Master B700
OS
windows 7
Buonasera a tutti, vi scrivo perché non so più veramente dove sbattere la testa, ho provato a prendere un programma scritto per un arduino mega e adattarlo ad un arduino uno ma mi da l'errore che vi allego in foto, qualcuno mi potrebbe dare una mano?

Grazie mille in anticipo Davide ;)
Ciao dovresti postarci il file almeno cosi vediamo il codice :)

Inviato dal mio SM-G930F utilizzando Tapatalk
 

davi01

Nuovo Utente
67
8
Ecco il codice!

// Davide Polito
// Serra autonoma con sensore di temperatura e umidità (DHT11), display LCD 20x4 e relè.

int phone = 9; // Relè 1
int ventole = 10; // Relè 2
int acqua = 11; // Relè 3

//DHT11 Sensor:
#include "DHT.h"
#define DHTPIN 12 // Sensore collegato al PIN 12
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);


//I2C LCD:
#include <Wire.h> // Libreria WIRE
#include <LiquidCrystal_I2C.h> // Libreria LCD I2C

// LCD I2C address
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);


void setup()
{
// PIN 9 al Relè - IN1
Serial.begin(9600);
pinMode(phone, OUTPUT);

// PIN 10 al relè - IN2
pinMode(ventole, OUTPUT);

// PIN 11 al relè - IN3
pinMode(acqua, OUTPUT);


//I2C LCD
Serial.begin(9600);
lcd.begin(20,4);
Serial.println("Serra Autonoma");

// Avvio sensore DHT11
dht.begin();
}


void nascita(){

// Inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore intervine
if (h>70)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h<65)
digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>25)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t <16)
digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}

void crescita(){

// inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore intervine
if (h>60)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h<50)
digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>28)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t <18)
digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}

void fioritura_e_frutti(){

// inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore interviene
if (h>50)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h<40)
digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>26)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t <20)
digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}


void loop(){

nascita();
crescita();
fioritura_e_frutti();
}


Grazie mille della disponibilità!
Post unito automaticamente:

Secondo me ho sbagliato qualcosa nelle librerie ma non riesco a capire cosa @marcusfenixx
 

marcusfenixx

Utente Attivo
375
65
CPU
i7 4790k
Scheda Madre
Gygabyte z97x gaming 3
HDD
ssd kingston v300 e barracuda 7200 1 tb
RAM
hyperfury 2400 mhz cl11
GPU
r9 280
Audio
soundblaster zx
Monitor
asus vs 248h
PSU
Cooler Master B700
OS
windows 7
Ecco il codice!

// Davide Polito
// Serra autonoma con sensore di temperatura e umidità (DHT11), display LCD 20x4 e relè.

int phone = 9; // Relè 1
int ventole = 10; // Relè 2
int acqua = 11; // Relè 3

//DHT11 Sensor:
#include "DHT.h"
#define DHTPIN 12 // Sensore collegato al PIN 12
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);


//I2C LCD:
#include // Libreria WIRE
#include // Libreria LCD I2C

// LCD I2C address
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);


void setup()
{
// PIN 9 al Relè - IN1
Serial.begin(9600);
pinMode(phone, OUTPUT);

// PIN 10 al relè - IN2
pinMode(ventole, OUTPUT);

// PIN 11 al relè - IN3
pinMode(acqua, OUTPUT);


//I2C LCD
Serial.begin(9600);
lcd.begin(20,4);
Serial.println("Serra Autonoma");

// Avvio sensore DHT11
dht.begin();
}


void nascita(){

// Inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore intervine
if (h>70)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>25)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}

void crescita(){

// inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore intervine
if (h>60)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>28)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}

void fioritura_e_frutti(){

// inizializzazione contatore
int contum=0;
int conttemp=0;

// Lettura umidità e temperatura del sensore DHT11
int h = dht.readHumidity();
int t = dht.readTemperature();


// Misura l'umidità e se maggiore o minore interviene
if (h>50)
digitalWrite (ventole, HIGH); // Attiva Relè 2
contum=1;
if else (h digitalWrite (acqua, HIGH); // Attiva Relè 3
contum=1;
else
digitalWrite (ventole, HIGH); // Disattiva Relè 2
digitalWrite (acqua, HIGH); // Disattiva Relè 3
contum=0;


// Misura la temperatura e se maggiore o minore intervine
if (t>26)
digitalWrite (vetole, HIGH); // Attiva Relè 2
conttemp=1;
if else (t digitalWrite (phone, HIGH); // Attiva Relè 1
conttemp=1;
else
digitalWrite (ventola, LOW); //Disattiva Relè 2
digitalWrite (phone, LOW); //Disattiva Relè 1
conttemp=0;

Serial.print("Temp: ");
Serial.print(t);
Serial.print("C, Umid: ");
Serial.print(h);
Serial.println("%");


// impostare cursore sulla prima riga
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.print(t);
lcd.print("C");

// imposta cursore sulla seconda riga
lcd.setCursor(0,1);
lcd.print("Umidita': ");
lcd.print(h);
lcd.print("%");

// impostare cursore sulla terza riga
lcd.setCursor(0, 2);
if(contum==0 && conttemp==0)
lcd.print("Cond: Perfette");
if else(contum==1 && conttemp==0)
lcd.print("Cond: High temp");
if else(contum==0 && conttemp==1)
lcd.print("Cond: High um");
if else(contum==1 && conttemp==1)
lcd.print("Cond: High temp & um");
}


void loop(){

nascita();
crescita();
fioritura_e_frutti();
}


Grazie mille della disponibilità!
Post unito automaticamente:

Secondo me ho sbagliato qualcosa nelle librerie ma non riesco a capire cosa @marcusfenixx
Serve che lo inserisci nell'apposito tag
Codice:
Inviato dal mio SM-G930F utilizzando Tapatalk
 

samuele794

Utente Attivo
246
51
CPU
i5-6500
Dissipatore
NZXT Kraken X52
Scheda Madre
Asus z170 Pro Gaming
HDD
SSD Samsung 850 PRO 256GB SSD, 3TB HD
RAM
HyperX 16 GB DDR4 2666 MHz
GPU
Gigabyte GTX 1070
Monitor
Samsung
PSU
Coolermaster v550 550W
Case
Corsair 780T
OS
Windows 10
Versione dell'ide di arduino? OS? Inserisci anche tutto l'errore.
Per l'errore più dettagliato imposta Warning del compilatore su "Tutti"
 
Ultima modifica:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili