串行FLASH SSF1101在单片机
CF:比较标志,为1时,表示缓冲区中的内容和指定的被比较的闪存页面不一致;
WPF:写保护标志,为1表示器件处于硬件写保护状态;
Bit2~Bit0:容量指示位,为全1表示闪存容量为4Mbit;
Res:保留位,暂为01;
当器件正确上电复位后,SR为 00001111B。
3.2 命令操作说明
(1)缓冲区传送
缓冲区传送分为三种,首先通过闪存到缓冲区的传送命令可把指定闪存页面中的内容拷贝到缓冲区1或缓冲区2中,传送到缓冲区1的命令码为:1100dddd PA11-PA0 XXXXXXXXXXXX,共32位, 并继续保持SCK到至少第35个周期。其中的PA11 - PA0为指定被传送的闪存页面, 如果超出器件的范围,则自动取模。当CS被置高后,传送操作开始, 同时状态寄存器中的BF位有效。 完成传送操作大约需要100μs, 完成后,BF标志清零(下述命令中,如没有特别指出,其命令码含义及操作时序均与此相同,此外针对缓冲区2的操作仅命令不同,其余部分完全相同,下述命令均相同)。
使用内建擦除周期的从缓冲区到闪存传送命令时,一般先使用内建的擦除周期擦除指定的闪存页面,然后把缓冲区中的内容拷贝到指定的闪存页面中。
不使用内建擦除周期的从缓冲区到闪存传送命令时,可直接把缓冲区中的内容拷贝到指定的闪存页面中。
(2)读写缓冲区
读缓冲区命令用于读取缓冲区1(或2)中的一个或多个字节数据,命令码为:
1110ddddXXXXXXXXXXXXBA11-BA0。
其中,BA11-BA0 用于指定从缓冲区中读取数据的开始地址,如果超出缓冲区大小则自动取模。器件在第35个SCK的下降沿开始从SO引脚输出数据,且高位在前。读取一个字节后,缓冲区地址自动加1,然后继续输出下一地址的数据。如到达缓冲区的尾部, 则自动返回到缓冲区的起始地址。输出最后一个字节后需额外的3~7个脉冲。
写缓冲区命令用于将一个或多个字节数据写入缓冲区1(或2)中,命令码为:
0110ddddXXXXXXXXXXXXBA11-BA0
其中,BA11-BA0用来指定写入缓冲区的开始地址,如果地址超出缓冲区大小则自动取模。器件在第33个SCK的上升沿开始从SI引脚接收数据(高位在前),接收一个字节后写入缓冲区, 并自动对缓冲区地址加1后继续接收下一地址的数据。如果到达缓冲区的页尾,则自动返回到缓冲区的起始地址。输出最后一个字节后需额外的3~7个脉冲。
(3)闪存直接读
闪存直接读命令用于直接从闪存页面中读取数据,而不通过缓冲区,也不影响缓冲区中的内容。其命令码为:
0001dddd PA11-PA0 BA11-BA0。
其中,PA11-PA0用于指定被操作的闪存页面, 如果超出器件的范围,则自动取模;BA11-BA0则用来指定从页面内读取数据的开始地址,同样, 如果超出页面大小则自动取模。器件在第35个SCK的下降沿开始从SO引脚输出数据, 高位在前。 输出一个字节后页面内数据地址自动加1,然后继续输出下一地址的数据。如果到达页尾,则自动返回到页初地址。
(4)比较闪存页面和缓冲区
此命令用于比较指定的闪存页面和缓冲区内的数据是否相同,在被
《串行FLASH SSF1101在单片机(第3页)》