用的是标准库,折腾了好久了,可就是不能写入数据?请教各位,谁能帮我看看,万分感谢
#include "flash.h"
#include "delay.h"
u16 STMFLASH_ReadHalfWord(u32 faddr)
{
return *(vu16*)faddr;
}
void STMFLASH_Write(u32 secter,u16 *pBuffer,u16 NumToWrite)
{
FLASH_Status status = FLASH_COMPLETE;
u32 endaddr=0;
if(NumToWrite>1024)
return;
FLASH_Unlock();
endaddr=secter+NumToWrite*2;
status=FLASH_ErasePage(secter);
//if(status==FLASH_COMPLETE)
//{
while(secter<endaddr)//дÊý¾Ý
{
FLASH_ProgramHalfWord(secter,*pBuffer);
secter+=2;
pBuffer++;
}
//}
FLASH_Lock();//ÉÏËø
}
void STMFLASH_Read(u32 secter,u16 *pBuffer,u16 NumToRead)
{
u16 i;
for(i=0;i<NumToRead;i++)
{
pBuffer[i] =STMFLASH_ReadHalfWord(secter+i*2);
}
}
|