EDN首页   博客首页

日志档案

发表于 2008-5-23 14:26:02

1

标签: PIC  

pic18f2480的eeprom读写

关于PIC自带的内部的eeprom的读写,其实只要是pic系列的原理都是一样的,控制两个寄存器,注意操作顺序即可。

         这里是几个测试通过的读写小函数:

char EEPROM_READ(char adresa)     // read from EEPROM

 eeadr = adresa;
 clear_bit( eecon1, EEPGD);     
 clear_bit( eecon1, CFGS);     
    set_bit( eecon1, RD);      // start reading
    return eedata;
}
void EEPROM_READ_LEN(char adresa, char len, char *string)
{
 char i = 0;
 while(i < len)
 {
  *(string+i) = EEPROM_READ(adresa + i);
  i++;
  delay_us(20);
 }
}
void EEPROM_WRITE(char adresa,char data)  //write to EEPROM

   eeadr="adresa";
   eedata="data";
   set_bit(eecon1,WREN);
   eecon2=0x55;
   eecon2=0xAA;
   set_bit( eecon1, WR );       // start writing
   while(eecon1&2);          // cycle until WR reg. eecon1 = 1 (writing..)
   clear_bit( eecon1, WREN );
}
void EEPROM_WRITE_LEN(char adresa, char len, char *string)
{
 char i = 0;
 while(i < len)
 {
  EEPROM_WRITE(adresa + i, *(string+i));
  i++;
  delay_us(20);
 }
}

系统分类: 单片机   |   用户分类: pic   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(173)    回复(0)  

投一票您将和博主都有获奖机会!