toby-365292 发表于 2017-3-23 08:29:04

SMT8 EEPROM读写程序 写没问题好象读有问题

连续读EE时,例如
      data_1=Read_ee(1);
      data_2=Read_ee(2);
      data_3=Read_ee(3);
      data_4=Read_ee(4);
      data_5=Read_ee(5);
      data_6=Read_ee(6);

      data_1=Read_ee(1); 的值读不出来,后面的都读的对的,写函数没有问题



unsigned char Read_ee(unsigned char add)
{
   static unsigned char *p;
   p=(unsigned char *)(add+0x4000);
   return *p;
}


void Write_ee(unsigned char add,unsigned char data)
{
   static unsigned char *p;
   p=(unsigned char *)(add+0x4000);
   do{FLASH_DUKR=0xae;FLASH_DUKR=0x56;}while(FLASH_IAPSR_DUL==0);
   *p=data;while(FLASH_IAPSR_HVOFF==0);
}

sssdd 发表于 2017-4-10 11:40:34

static干掉,试试。这货害人不浅。
并且解锁动作做在读前面,试试。。
解锁动作只要做一次,解完就别锁了。试试。
页: [1]
查看完整版本: SMT8 EEPROM读写程序 写没问题好象读有问题