Impianto d'Irrigazione Interrato gestito da Arduino

Puso:
:o :o :o :o
è la stessa cosa che mi dicono tutti i giorni ingegneri, dirigenti, ed altri...non che siamo colleghi???
:confused: :confused: :confused:

Impossibile io sono disoccupato e studio per entrare nei Carabinieri ahahah

Claudio_FF:
Per quanto riguarda l'RTC (DS3231) non ho mai maneggiato la data ma solo l'ora, usando esclusivamente la libreria Wire (obbligatoria se non si vuole riscrivere a mano il protocollo i2c) e la tabella registri di pagina 11 del datasheet.

In pratica con queste due funzioni:

void leggiRTC()

{
    Wire.beginTransmission(0x68);  // <--- indirizzo RTC su bus i2c
    Wire.write(1);                  // <--- punta al registro 1 (minuti)
    Wire.endTransmission();
    Wire.requestFrom(0x68, 2);      // <--- due registri da leggere
    if(Wire.available() == 2)
    {
        minuti = BCDbin(Wire.read());
        ore = BCDbin(Wire.read());
    }
}





void impostaRTC()
{
    Wire.beginTransmission(0x68);  // <--- indirizzo RTC su bus i2c
    Wire.write(0);                  // <--- punta al registro 0 (secondi)
    Wire.write(0);                  // <--- azzera secondi RTC
    Wire.write(binBCD(minuti));    // <--- imposta minuti RTC
    Wire.write(binBCD(ore));        // <--- imposta ore RTC
    Wire.endTransmission();
}



E aiutandomi per la conversione binario<->BCD con queste due:


byte BCDbin(byte n)
{
    return ((n >> 4) * 10) + (n & 0x0F);
}
byte binBCD(byte n)
{
    return ((n / 10) << 4) | (n % 10);
}



Il tutto prevede due variabili globali 'ore' e 'minuti', che conterranno rispettivamente da 0 a 23 e da 0 a 59.

Allora i primi 2 sketch li ho capiti... ma l'ultimo no. Correggimi se sbaglio... i primi 2 servono a creare una sorta di database dove verranno memorizzati i secondi che poi ci serviranno per assemblare i minuti e le ore?
A cosa servirebbe e cos'è il BCD? Un codice come il Binario? Perdonami non ne conosco l'esistenza. Comunque se ci sono link affidabili e precisi per principianti come me dove viene spiegato come utilizzare l'RTC mica me ne potresti linkare qualcuno? Qui ormai non basta più il libro per cominciare a imparare il linguaggio di arduino, mi ci vuole qualcosa di più avanzato

Edit: e comunque si... funzionerà in I2C con la libreria Wire.h obbligatoria anche per la comunicazione con l'lcd