⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eepromds1307seriefuncionando.c

📁 Este código lo uso en un 16f877 y me sirve para poder guardar en la eeprom 24lc256 los valores de la
💻 C
字号:
#define usopic16f877

#include <16f877.h>
#device ADC=10

#fuses XT,NOPROTECT,BROWNOUT,PUT,NOWDT,NODEBUG,NOLVP,NOCPD,NOWRT

#USE fast_IO (A)
#USE fast_IO (B)
#USE fast_IO (C)
#USE fast_IO (D)


#use delay(clock=4000000)
#use rs232(baud=19200, xmit=PIN_C6,rcv=PIN_C7,errors,stream=aux)
#use i2c(master, sda=PIN_D6, scl=PIN_B2,slow)
#use i2c(master,sda=PIN_D7, scl=PIN_B3,fast=400000)



//Inclusion de librerias
#include <string.h>
#include <stdlib.h>
#include <24lc256_inta.h>
#include <ds1307serie.h>


escritura_eeprom(char hrs, char min, char sec, char day, char month, char yr, long int dir)
{
    write_ext_eeprom(dir++,hrs);
    write_ext_eeprom(dir++,min);
    write_ext_eeprom(dir++,sec);
    write_ext_eeprom(dir++,day);
    write_ext_eeprom(dir++,month);
    write_ext_eeprom(dir++,yr);
/*
    fprintf (aux,"\n\rhoras: %2d",hrs);
    fprintf (aux,"\n\rminutos: %2d",min);
    fprintf (aux,"\n\rsegundos: %2d",sec);
    fprintf (aux,"\n\rdia: %2d",day);
    fprintf (aux,"\n\rmes: %2d",month);
    fprintf (aux,"\n\rano: %2d\n\r",yr);
*/
}

lectura_eeprom(long int dir)
{
   char x;

      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;
      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;
      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;
      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;
      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;
      x=read_ext_eeprom(dir);
      fprintf (aux,";%2d",x);
      dir++;

}

void main()

{

  long int dir=0,i;
  char x=0,sec,min,hrs,day,month,yr,dow;

   init_ext_eeprom();

   ds1307_init();

  // Set date for -> 15 June 2005 Tuesday
  // Set time for -> 15:20:55

   ds1307_set_date_time(31,5,9,2,23,59,30);

   dir=0;

//while(1)


   for(i=0;i<=2000;i++){


   ds1307_get_date(day,month,yr,dow);

   ds1307_get_time(hrs,min,sec);
   

    printf("\%02d/\%02d/\%02d;",day,month,yr);
    printf("\%02d:\%02d:\%02d", hrs,min,sec);

    //fprintf (aux,"\n\rWritting...\n\r");

    escritura_eeprom(hrs,min,sec,day,month,yr,dir);
    

    //fprintf (aux,"\n\rRead:\n\r");

    lectura_eeprom(dir);
    
    fprintf (aux,"\r\n");

    //delay_ms(1000);

    dir=dir+6;
  // }
}

fputs("*",aux);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -