void EPROM_WriteMemory(SPI_WidthType * pWrBuff,uint16_t address,uint32_t length)
{
uint32_t i;
uint32_t FlowSize, FlowLen;
//if((address + length) > (EEPROM_MAX_ROM_SIZE - 1 )) //溢出
//{
//{return 0;}
FlowSize = address % EEPROM_MAX_PAGE_SIZE; //求余
if(FlowSize) //非页首地址
{
FlowLen = EEPROM_MAX_PAGE_SIZE - FlowSize;
if(FlowLen > length) //不跨页
{
for(i = 0; i < length; i++)
{
gu8SPI1_TxBuff[i+3] = * pWrBuff;
pWrBuff ++;
}
EPROM_WriteSerialMemory(address,length);
}
else //跨页
{
for(i = 0; i < FlowLen; i++) //不跨页部分写入
{
EEPROM读写(可自动跨页,解决“上卷”)
最新推荐文章于 2024-08-13 23:10:07 发布