W25Q16 Flash多次连续存储数据
时间:10-02
整理:3721RD
点击:
大家好,我现在想实现W25Q16掉电后,把地址存起来,下一次上电再读出,按这个地址接着往里写数据。可是现在读出的地址只有一个 00 。麻烦感兴趣的朋友看看指正。
SPI_Flash_Read(Rec_DATA,0x000000,4); //读出地址值
Add[0] = (u32)(Rec_DATA[0])<<24+(u16)(Rec_DATA[1])<<16+(u8)(Rec_DATA[2])<<8+Rec_DATA[3]; //合并地址数据
while(1)
{
Add[0]=Add[0]+1;
SPI_Flash_Write_NoCheck(Add,0x000000,4); // 把地址数据存在前4个字节
SBUF =Add[a] ; // 发送数据
while(TI==0);
TI=0;
delay500ms();
P10=!P10;
a++;
if (a>=4)
{
while(1);
}
}
SPI_Flash_Read(Rec_DATA,0x000000,4); //读出地址值
Add[0] = (u32)(Rec_DATA[0])<<24+(u16)(Rec_DATA[1])<<16+(u8)(Rec_DATA[2])<<8+Rec_DATA[3]; //合并地址数据
while(1)
{
Add[0]=Add[0]+1;
SPI_Flash_Write_NoCheck(Add,0x000000,4); // 把地址数据存在前4个字节
SBUF =Add[a] ; // 发送数据
while(TI==0);
TI=0;
delay500ms();
P10=!P10;
a++;
if (a>=4)
{
while(1);
}
}
也不看看存储数据的类型,打赏积分把
类型没有问题,不给分!
欢迎大家加入qq群202549851,高通字库芯片,flash各种问题交流
