中级会员
 
- 积分
- 230
- 金钱
- 230
- 注册时间
- 2016-3-26
- 在线时间
- 83 小时
|
1金钱
以下是示例中的代码
//4Kbytes为一个Sector
//16个扇区为一个Block
//W25Q128
//容量为16M字节,共有128个Block,4096个Sector
//写SPI FLASH
//pBuffer:数据存储区
//WriteAddr:开始写入的地址(24bit)
//NumByteToWrite:要写的字节数(最大65535)
#if W25QXX_USE_MALLOC==0
u8 W25QXX_BUFFER[4096];
#endif
void W25QXX_Write(u8* pBuffer,u32 WriteAddr,u32 NumByteToWrite)
{
}
这里说的是一次性最大只能写入65535个字节,即一个Block。
1.为什么一次只能写入一个BLock?
2.我试过一次性写入超过65535个字节,写入也是正常的,这是为什么?
|
最佳答案
查看完整内容[请看2#楼]
决定写入数据是多少的,是NumByteToWrite的数据类型。我们以前应该是u16的,所以才有65535之说。如果是u32的,自己计算。
|