OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2472|回复: 0

sst25VF016B,自动地址递增 (AAI )字编程和时序不符具体问题请大佬解答

[复制链接]

2

主题

9

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2019-6-11
在线时间
12 小时
发表于 2020-3-3 17:11:52 | 显示全部楼层 |阅读模式
void Section_Write(u32 addr,u8 *buffer,u16 Size)
{
                u16 i=0;

                Section(addr);//Ïè2á3y

                EWSR();//ê1ÄüD′×′쬼Ä′æÆ÷  
                WREN();//D′ê1Äü   

                CE_H_L=0;
                SPI_SendByte(0xAD);
                SPI_SendByte((addr&0xFFFFFF)>>16);
                SPI_SendByte((addr&0xFFFF)>>8);
                SPI_SendByte(addr&0xFF);
                SPI_SendByte(buffer[0]);
                SPI_SendByte(buffer[1]);

                CE_H_L=1;

                i=0;
                while(i<Size)
                {
                delay_us(10);
                CE_H_L=0;
                SPI_SendByte(0xAD);
                SPI_SendByte(buffer[i++]);
                SPI_SendByte(buffer[i++]);
                CE_H_L=1;
    }

                delay_us(10);
                WRDI();//í&#203;3&#246;AAI&#196;£ê&#189;
                BUSY();
}

上面的方式读写就正常了,但是和时序图不符,问题出在I变量的循环次数,地址后数组0和1两个写入一定要重写不然就会不对
假如I=2,数据为01 02 03 04 05 06 写入,读取到是  03 04 05 06  ff  ff,这样是符合时序图的,但是数据不对
如果I为0,数据为01 02 03 04 05 06 写入,读取到是 01 02 03 04 05 06,这样不符合时序图的,但是数据对

请用过的大佬指教

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-21 11:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表