arduino enviar datos a thingspeak

Buenas, tengo un problema con el siguiente código. Es que lo he estado utilizando con un arduino uno, y ahora necesito utilizarlo con un arduino nano y el modulo de Internet ENC28J60. El problema esta en que no se como cambiar la biblioteca ya que ahora utilizo para arduino uno (#include <Ethernet.h>) y tengo que poner para la placa ENC28J60 la biblioteca (#include <EtherCard.h>)

Dejo el código por si me pueden ayudar
Gracias

define SECRET_CH_ID 846233 // reemplaza 0000000 con tu número de canal

define SECRET_WRITE_APIKEY “5QCVA2MW9HXGLM5W” // reemplaza XYZ con la clave de API de escritura de tu canal

#include “ThingSpeak.h”
#include <Ethernet.h>

byte mac = SECRET_MAC;

// Set the static IP address to use if the DHCP fails to assign
IPAddress ip(192, 168, 0, 177);
IPAddress myDns(192, 168, 0, 1);

EthernetClient client;

unsigned long myChannelNumber = SECRET_CH_ID;
const char * myWriteAPIKey = SECRET_WRITE_APIKEY;

// Initialize our values
int number1 = 0;
int number2 = random(0,100);
int number3 = random(0,100);
int number4 = random(0,100);

#include “DHT.h”
#define DHT1PIN 4 //entradas sensor temperatura calle
#define DHT2PIN 3 // entrada sensor temperatura inver

// Uncomment whatever type you’re using!
#define DHT1TYPE DHT11 // DHT 11
#define DHT2TYPE DHT11 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)

DHT dht1(DHT1PIN, DHT1TYPE);
DHT dht2(DHT2PIN, DHT2TYPE);

// EduIntro - Version: Latest

#include <pitches.h>
//#include <EduIntro.h> colocadas asi las dos por si es este el error
#include <OneWire.h>
#include <DallasTemperature.h>

OneWire ourWire(5); //Se establece el pin 2 como bus OneWire
DallasTemperature sensors(&ourWire); //Se declara una variable u objeto para nuestro sensor

//anemometro//
const float pi = 3.14159265; //Número de pi
int period = 5000; //Tempo de medida(miliseconds)
int delaytime = 2000; //Invervalo entre as amostras (miliseconds)
int radius = 147; //Raio do anemometro(mm)
// — Variáveis Globais —
unsigned int Sample = 0; //Armazena o número de amostras
unsigned int counter = 0; //Contador para o sensor
unsigned int RPM = 0; //Rotações por minuto
float speedwind = 0; //Velocidade do vento (m/s)
float windspeed = 0; //Velocidade do vento (km/h)
// lluvia//
int agua = 12;

const int sensorPin = A0;// sensor humedad suelo

int h1;
int t1;
int h2;
int t2;

void setup() {
Ethernet.init(10); // Most Arduino Ethernet hardware
Serial.begin(115200); //Initialize serial
dht1.begin();
dht2.begin();
sensors.begin(); //Se inicia el sensor
pinMode(2, INPUT); //configura o digital 2 como entrada, entrada anemometro.
pinMode(12, INPUT); //definir pin como entrada lluvia

// start the Ethernet connection:
Serial.println(“Initialize Ethernet with DHCP:”);
if (Ethernet.begin(mac) == 0) {
Serial.println(“Failed to configure Ethernet using DHCP”);
// Check for Ethernet hardware present
if (Ethernet.hardwareStatus() == EthernetNoHardware) {
Serial.println(“Ethernet shield was not found. Sorry, can’t run without hardware. :(”);
while (true) {
delay(1); // do nothing, no point running without Ethernet hardware
}
}
if (Ethernet.linkStatus() == LinkOFF) {
Serial.println(“Ethernet cable is not connected.”);
}
// try to congifure using IP address instead of DHCP:
Ethernet.begin(mac, ip, myDns);
} else {
Serial.print(" DHCP assigned IP ");
Serial.println(Ethernet.localIP());
}
// give the Ethernet shield a second to initialize:
delay(1000);

ThingSpeak.begin(client); // Initialize ThingSpeak
}

void loop() {

// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds ‘old’ (its a very slow sensor)
float h1 = dht1.readHumidity();
float t1 = dht1.readTemperature();
float h2 = dht2.readHumidity();
float t2 = dht2.readTemperature();

// check if returns are valid, if they are NaN (not a number) then something went wrong!
if (isnan(t1) || isnan(h1)) {
Serial.print(h1);;
Serial.print(t1);
}
if (isnan(t2) || isnan(h2)) {

Serial.print(h2);
Serial.print(t2);

}
sensors.requestTemperatures(); //Se envía el comando para leer la temperatura
float temp= sensors.getTempCByIndex(0); //Se obtiene la temperatura en ºC
Serial.print(temp);
int humedad = analogRead(sensorPin);// humedad suelo
Serial.print(humedad);// humedad suelo
Serial.print(“Lluvia “);
agua = digitalRead(12);
if (agua==HIGH) Serial.println(” No”);
else Serial.println(" Si");

Sample++;
windvelocity();
RPMcalc();
Serial.print("; Vel: ");

//*****************************************************************
//print m/s
WindSpeed();
Serial.print(windspeed);
Serial.print(" [m/s] ");

//*****************************************************************
//print km/h
SpeedWind();
Serial.print(speedwind);
Serial.print(" [km/h] ");
Serial.println();

delay(delaytime); //taxa de atualização
} //end setup

//Função para medir velocidade do vento
void windvelocity() {
speedwind = 0;
windspeed = 0;

counter = 0;
attachInterrupt(0, addcount, RISING);
unsigned long millis();
long startTime = millis();
while (millis() < startTime + period) {}
}

//Função para calcular o RPM
void RPMcalc() {
RPM = ((counter) * 60) / (period / 1000); // Calculate revolutions per minute (RPM)
}

//Velocidade do vento em m/s
void WindSpeed() {
windspeed = ((4 * pi * radius * RPM) / 60) / 1000; //Calcula a velocidade do vento em m/s
} //end WindSpeed

//Velocidade do vento em km/h
void SpeedWind() {
speedwind = (((4 * pi * radius * RPM) / 60) / 1000) * 3.6; //Calcula velocidade do vento em km/h
} //end SpeedWind

//Incrementa contador
void addcount() {
counter++;

// set the fields with the values
ThingSpeak.setField(1, t1);
ThingSpeak.setField(2, h1);
ThingSpeak.setField(3, speedwind);
ThingSpeak.setField(4, digitalRead(12));

// write to the ThingSpeak channel
int x = ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);

delay(1000); // Wait 20 seconds to update the channel again
}

lee las normas del foro y edita tu código usando etiquetas </>