Ecco cosa contiene il file RAMenus.pde che scaricate dal repository di Curt:
// RAMenus.pde
//
// This version designed for v0.8.5 Beta 10 and later
//Insieme di include che servono per far funzionare il controller
#include <ReefAngel_Features.h>
#include <ReefAngel_Globals.h>
#include <ReefAngel_Wifi.h>
#include <Wire.h>
#include <OneWire.h>
#include <Time.h>
#include <DS1307RTC.h>
#include <ReefAngel_EEPROM.h>
#include <ReefAngel_NokiaLCD.h>
#include <ReefAngel_ATO.h>
#include <ReefAngel_Joystick.h>
#include <ReefAngel_LED.h>
#include <ReefAngel_TempSensor.h>
#include <ReefAngel_Relay.h>
#include <ReefAngel_PWM.h>
#include <ReefAngel_Timer.h>
#include <ReefAngel_Memory.h>
#include <ReefAngel.h>
//inizio del setup ... dove si definiscono le funzioni
void setup()
{
ReefAngel.Init(); //Initialize controller
ReefAngel.SetTemperatureUnit(1);
// serve per dirgli che la temperatura la deve leggere in Celsius
// Set the ports that get toggled on & off during the following modes
// To enable a port to be toggled, place a 1 in the appropriate position
// Uncomment and update as needed
// Port 87654321
//ReefAngel.FeedingModePorts = B10011100;
//ReefAngel.WaterChangePorts = B10011100;
//ReefAngel.OverheatShutoffPorts = B00001100;
//ReefAngel.LightsOnPorts = B00000110;
// Porte che vogliamo siano sempre accese
ReefAngel.Relay.On(Port8);
}
void loop()
{
ReefAngel.ShowInterface();
// Specific functions
ReefAngel.StandardATO(Port1);
//state dicendo al controller di far partire la funzione di rabbocco e che la porta della pompa di rabbocco è la 1
ReefAngel.StandardLights(Port2);
//state dicendo al controller di far partire la funzione di accensione luci normali e che la porta è la 2 (per esempio i neon... non usarla per l'HQI)
ReefAngel.MHLights(Port3);
//state dicendo al controller di far partire la funzione per le HQI e che la porta è la 3 (questa funzione è uguale alle luci standard... solo che in caso di blackout riaccende la luce dopo un tot di minuti che specificate nel file SetinternalMemory
ReefAngel.Wavemaker1(Port4);
//state dicendo al controller di far partire la funzione del moto ondoso sulla porta 4
ReefAngel.Wavemaker2(Port5);
//state dicendo al controller di far partire la funzione del moto ondoso sulla porta 5
ReefAngel.StandardFan(Port6);
//state dicendo al controller di far partire la funzione del controllo ventole o refrigeratore sulla porta 6
ReefAngel.StandardHeater(Port7);
//state dicendo al controller di far partire la funzione del controllo del riscaldatore sulla porta 7
}
------------------------------------------------------------------------
mettiamo il caso che abbiamo lo skimmer sulla porta 8 e vogliamo che in caso di blackout lo skimmer si riaccenda con un ritardo, aggiungiamo prima dell'ultima parentesi graffa chiusa (che chiude la programmazione) la segente riga:
ReefAngel.DelayedOn(Port8,10); //ritarda l'accensione di 10 minuti
Però dobbiamo anche togliere la stessa porta tra quelle che nel setup abbiamo definito essere sempre accese... altrimenti le due cose cozzano...
