改用word编程了,ok!一边喝着茶一边看着仿真,心里总算放下了这块砖头。。。。。。。。。。。把程序贴上
void Buffer_to_EEPROM(void)
{
u8 i;
u32 k;
// disableInterrupts();
FLASH_Unlock(FLASH_MEMTYPE_DATA);
/*
for(i=0;i<60;i++)
{
FLASH_ProgramByte(0x4000+i,System_Parameter[i]);
while(!FLASH_GetFlagStatus(FLASH_FLAG_EOP )) ;
}*/
IWDG_ReloadCounter();//feeding watchdog
for(i=0;i<27;i++)//实际只用了108字节
{
k=0;
k+=(u8)System_Parameter[i*4];
k<<=8;
k+=(u8)System_Parameter[i*4+1];
k<<=8;
k+=(u8)System_Parameter[i*4+2];
k<<=8;
k+=(u8)System_Parameter[i*4+3];
FLASH_ProgramWord((0x4000+i*4),k);
while(!FLASH_GetFlagStatus(FLASH_FLAG_EOP )) ;
GPIO_WriteReverse (GPIOC, GPIO_PIN_6);
}
// FLASH_ProgramBlock(0,FLASH_MEMTYPE_DATA ,FLASH_PROGRAMMODE_STANDARD,System_Parameter );
// FLASH_WaitForLastOperation(FLASH_MEMTYPE_DATA);//start address is 0x4000
FLASH_Lock(FLASH_MEMTYPE_DATA);
return;
}
断开仿真。。。。。。。。。。。。。。。。。。。。
再连接仿真看看。。。。。。。。。。。。。。。。。。。。
靠,里面数据又什么都没有。。。。。。。。。。。。。。。。:'(
似乎数据都只是存在了电脑里面,并没有真正写入eeprom。。。。。。。。。。。。。。。汗
ST你TMD就这么个折磨人,不就一个eeprom吗,至于吗?
对ST彻底失望了。。。。。。。。。。。。。
在这里发帖也基本没用。。。。。。。。。。。。。就当发发牢骚解解闷了:@
|