Autor Tema: Realizar una interrupciones cada 15 minutos  (Leído 1339 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ajrob

  • PIC10
  • *
  • Mensajes: 8
Realizar una interrupciones cada 15 minutos
« en: 23 de Octubre de 2013, 05:00:27 »
Buenas;

Tengo una duda a ver si me podéis ayudar. Lo que intento hacer es leer/escribir una eeprom cada 15 minutos.Es posible hacer una interrupción cada 15 minutos con los timers o necesito usar un circuito externo?

Muchas gracias

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Realizar una interrupciones cada 15 minutos
« Respuesta #1 en: 23 de Octubre de 2013, 06:29:42 »
Una interrupción cada 15 minutos no podrás, pero sí puedes hacer una en el periodo más alto que consigas y allí incrementar un contador.
Cuando el contador llegue a una cifra tal que hayan trascurrido esos 15 minutos, puedes lanzar el proceso que necesites.

Desconectado ajrob

  • PIC10
  • *
  • Mensajes: 8
Re: Realizar una interrupciones cada 15 minutos
« Respuesta #2 en: 23 de Octubre de 2013, 06:42:27 »
mira esto es un ejemplo;

necesitaría realizar esta orden de escritura cada 15 minutos..no entendí bien como debo realizarlo,si me podéis ayudar os lo agradecería mucho.

#include <18f4550.h>//Definimos la librería del Pic.
#FUSES  INTHS,MCLR // Definimos los Fuses
#use delay(INTERNAL=4MHZ) //El reloj interno empleado es de 4hz
#use I2C(Master, sda=PIN_B0, scl=PIN_B1)



int8 sin_decimal=(26);
int8 decimales_cero=(00);
int16 direccion=(0b00000000);





void main()
{



   for(direccion=0;direccion<=0X7ffe;direccion=direccion+2){


   i2c_start();
   delay_ms(50);            //Se inicia la comunicación I2C.
   i2c_write(0b10100000);   //dirección del dispositivo y último bit 0 de escritura. 
   delay_ms(50);
   i2c_write(direccion>>8);   //escribe el valor alto en ésta dirección.
   i2c_write(direccion);   //escribe el valor alto en ésta dirección.
   i2c_write(sin_decimal);  // escribimos el dato que queremos almacenar.
   i2c_write(decimales_cero); //escribimos un 0 para evitar un error(humedad=-1)
   // delay_ms(1000);//--->1seg
   i2c_stop(); // Finalizamos la comunicación I2C.

   }
}

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Realizar una interrupciones cada 15 minutos
« Respuesta #3 en: 23 de Octubre de 2013, 06:54:34 »
¡Pero ahí no tienes ninguna interrupción!

Desconectado ajrob

  • PIC10
  • *
  • Mensajes: 8
Re: Realizar una interrupciones cada 15 minutos
« Respuesta #4 en: 23 de Octubre de 2013, 07:04:54 »
lo sé lo sé, ésto lo puse sin la interrupción por si me podíais orientar