Executar função em tempo definido sem interferir no programa em geral.

Tenho uma Ethernet Shield que esta respondendo a requisições de clientes, gostaria de executar uma função especifica a cada 5 minutos.

Essa função somente seria de configuração, não vai interferir na requisição dos clientes. Como faço para chamar essa função a cada 5 minutos sem utilizar o delay()? pois a função delay trava o arduino durante esse tempo e ele para de responder aos clientes, quero rodar a função que disse anteriormente e mesmo assim continuar respondendo aos clientes.

Não sei se fui claro, mas se alguém puder me apresentar um tutorial ou link ficaria grato.

procura por millis(). E blink without delay nos exemplos.

Boas,

Eu uso esta livraria Arduino Playground - HomePage

ou então ve este post

Vou utilizar os seguinte código, pois alem de simples é eficiente. Porém tenho uma dúvida. Quando o Arduino exceder a capacidade do unsigned long (overflow ) o sistema vai ter guardado o último número em (UpdateNoIPLastMillis) e vai possivelmente nunca mais atualizar. Não sei se realmente isso vai acontecer, mas alguém com experiência em programação poderia dizer o que vai acontecer depois de MUITO tempo ligado isso? Como corrigir?

unsigned long UpdateNoIPCycle = 300000;
unsigned long UpdateNoIPLastMillis = 0;


void setup(){

  Serial.begin(9600);
  Serial.println("iniciando...");
}

void loop(){
  if(cycleCheck(&UpdateNoIPLastMillis, UpdateNoIPCycle))  {
    Serial.println("Verificando");
  }
}

// function for multitasking
// http://arduino.cc/forum/index.php/topic,5686.msg44073.html

boolean cycleCheck(unsigned long *UpdateNoIPLastMillis, unsigned long UpdateNoIPCycle) {
  unsigned long currentMillis = millis();
  if(currentMillis - *UpdateNoIPLastMillis >= UpdateNoIPCycle)  {
    *UpdateNoIPLastMillis = currentMillis;
    return true;
  }  
  else{
    return false;
  }
}

Em caso de overflow, a variável volta a 0. Ela actualiza sempre.

Quero fazer com que um Servo vá de 0° até 90° e a cada 12 horas repita a mesma função, alguém sabe um exemplo de programação que eu possa utilizar?

Perguntares em mais de um sitio não vai fazer com que obtenhas mais respostas correctas...