串行 spi Flash 跨页编程的注意点

spi Flash 进行 page program的时候,编程的数据为1-256个字节不等。在Datasheet中,如果编程的数据为256个字节,那么,输入的起始地址需要256个字节对齐,即需要页对齐。但如果编程的数据小于256个字节,datasheet则语焉不详。
前几天在优化spi flash驱动的时候,为了提升flash编程速度,将page从4个字节增加到12个字节。由于没有注意到跨页问题,发现,跨出页的字节被编程到了该页的前面。
举个例子:
对地址255/256/257编程三个字节,实际的编程的位置为255/0/1地址。
因此串行spi flash是不允许跨页编程的。上面的例子,需要分开两次编程,先地址255后地址256/257。




你可能感兴趣的:(Firmware)