Perfetto, dopo che hai creato le due schede inserendo rispettivamente l'interfaccia e l'implementazione della classe, importa la classe e crea l'oggetto plafo sul codice principale ad esempio cosi:
codice:
#include <Wire.h>
#include "RTClib.h"
#include "Plafo.h"
RTC_DS1307 RTC;
Plafo plafo;//Plafoniera
Sul metodo setup configura i canali ad esempio cosi:
codice:
void setup () {
//Configurazione plafoniera
//Channel,startHour,startMinute,endHour,endMinute,fadeLen,maxPWM,pin
plafo.setChannel(blue,18,0,4,0,30,180,7);//Dalle 18.00 alle 4.00, alba/tramonto 30 minuti, pwm massimo 180, pin 7
plafo.setChannel(white,18,15,3,45,75,180,5);//Dalle 18.15 alle 3.45, alba/tramonto 75 minuti
plafo.setChannel(uv,19,30,2,30,0,HIGH,22);//Dalle 19.30 alle 2.30, accensione immediata, pin 22 (digitale)
plafo.setChannel(moon,4,10,7,0,0,HIGH,23);//Dalle 4.10 alle 7.00
Serial.begin(57600);
Wire.begin();
RTC.begin();
....
sul ciclo loop esegui quindi il metodo perform dell'oggetto plafo passando l'ora ottenuta con l'RTC:
codice:
void loop () {
DateTime now = RTC.now();
plafo.perform(now.hour(), now.minute(), now.second());
...

