TI中文支持网
TI专业的中文技术问题搜集分享网站

TM4C1294NCPDT: spi flash擦除问题

arm: tm4c1294
sp flash: n25q128

SSI1_BASE

MAP_SSIConfigSetExpClk(SSI1_BASE,120000000,SSI_FRF_MOTO_MODE_0,SSI_MODE_MASTER,10000000,8);

———————————————————————————————————————————————————

代码如下:

for(i=0;i<4096;i++)

SPIFlashSectorErase(SSI1_BASE,i*4096);

for(i=0;i<4096;i++)

{

SPIFlashFastRead(SSI1_BASE,i*4096,buff,4096);

for(j=0;j>4096;j++)

if(buff[j]!=0xff)

break;

}

发现删除删除128*4096之后,读取扇区128*4096则数据不是0xff.
这是什么原因造成的?
擦除0-127扇区,则数据体都是0xff.

xyz549040622:

擦除是以扇区为单位进行的。至于你这句的表述,不是很懂。总共128个扇区,1个扇区几个字节呢?FLASH型号是什么呢?
发现删除删除128*4096之后,读取扇区128*4096则数据不是0xff.
这是什么原因造成的?
擦除0-127扇区,则数据体都是0xff.

user4766611:

回复 xyz549040622:

N25Q128

一共4096 sector;

一个sector4096byte

xyz549040622:

回复 user4766611:

你的意思懂了,有可能是你的SPIFlashSectorErase这个函数的第二个参数,i超过127后计算出现错误了,看不到你里面的函数是如何写的,无法判断,建议贴出代码看看。

user4766611:

回复 xyz549040622:

非常感谢,这个是标准库函数,我没有修改的。

赞(0)
未经允许不得转载:TI中文支持网 » TM4C1294NCPDT: spi flash擦除问题
分享到: 更多 (0)