Problema nell'unione di due semplici programmi

ho realizzato (in realtà erano praticamente già fatti) due semplici programmi:

oltre ad arduino uno Il primo utlizza un lcd 16x2 retroilluminato + potenziometro + dht11, il secondo rtc 1307 tiny.

quindi il primo misura umidità e temperatura e la mostra sul display il secondo mostra data e ora sul monitor seriale.

Ora vorrei unire questi due progetti, ma ho notato che se collego entrambi i circuiti (che utilizzano ovviamente piedini differenti) i numeri sia di uno che dell'altro programma sballano. (ho provato a lasciare prima un programma e poi l'altro e a collegare il circuito).

Vorrei sapere se può essere dovuto al fatto che sto alimentando tutto tramite usb e che quindi il problema sia la mancanza di mA. :roll_eyes:

Schema Schetch che hai scritto?
In alternativa una foto del palmo della mano sinistra e del piede destro. Forse riesco a leggere la soluzione dalla Tua mano :wink: :wink: :wink: :wink: :wink:

Ciao Uwe

Ripeto perche forse non mi sono spiegato. io ho provato semplicemente a collegare fisicamente il secondo circuito che prevede la connessione di due piedini analogici, vcc e massa, lasciando lo schetch inalterato e v.v. (ho provato lasciando il secondo schetch).

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
#include <dht11.h>
dht11 DHT;
#define DHT11_PIN 8

void setup() {
lcd.begin(16, 2);

lcd.setCursor(0, 1);
lcd.print("Umidita'");
lcd.setCursor(15, 1);
lcd.print("%");

lcd.setCursor(0, 0);
lcd.print("Temperatura");
lcd.setCursor(15, 0);
lcd.print((char)223);
}

void loop() {
lcd.setCursor(13, 1);
lcd.print(DHT.humidity);
lcd.setCursor(13, 0);
lcd.print(DHT.temperature);

int chk;
chk = DHT.read(DHT11_PIN); // READ DATA
switch (chk){
case DHTLIB_OK:
Serial.print(" OK,\t ");
break;
case DHTLIB_ERROR_CHECKSUM:
Serial.print("Checksum error,\t");
break;
case DHTLIB_ERROR_TIMEOUT:
Serial.print("Time out error,\t");
break;
default:
Serial.print("Unknown error,\t");
break;
}
// DISPLAT DATA
Serial.print(DHT.humidity, 1);
Serial.print(",\t ");
Serial.println(DHT.temperature,1);

delay(1000);
}

#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;

void setup () {
Serial.begin(57600);
Wire.begin();
RTC.begin();

if (! RTC.isrunning()) {
Serial.println("RTC is NOT running!");
RTC.adjust(DateTime(DATE, TIME));
}
}

void loop () {
DateTime now = RTC.now();

Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);

Serial.println();
delay(1000);
}