ycsjtzam 发表于 2013-6-26 15:07:53

STM8L的dataflash的块写

请好高手:STM8S的dataflash块写没问题,但STM8L的块写始终搞不定,谁能告诉我关键在那
代码如下:
void WriteMultiBlockByte(FLASH_MemType_TypeDef FLASH_MemType,BlockStartAddress_TypeDef BlockStartAddress,
                FLASH_ProgramMode_TypeDef FLASH_ProgMode, uint8_t *Buffer,uint8_t BlockNum)
{
 uint8_t  BlockNum_Temp;
 FLASH_Unlock(FLASH_MemType);
 if(FLASH_MemType==FLASH_MEMTYPE_DATA)
  while (FLASH_GetFlagStatus(FLASH_FLAG_DUL) == RESET);
 else
  while (FLASH_GetFlagStatus(FLASH_FLAG_PUL) == RESET);
 for(BlockNum_Temp=0;BlockNum_TempFLASH_DATA_BLOCKS_NUMBER)
    break;
  }
  else
  {
   if((BlockNum_Temp+BlockStartAddress)>FLASH_PROG_BLOCKS_NUMBER)
    break;
  }
  FLASH_ProgramBlock(BlockNum_Temp+BlockStartAddress, FLASH_MemType, FLASH_ProgMode,Buffer+BlockNum_Temp*FLASH_BLOCK_SIZE);
  FLASH_WaitForLastOperation(FLASH_MemType);
 }
 FLASH_Lock(FLASH_MemType);
}
页: [1]
查看完整版本: STM8L的dataflash的块写