flash 内存 Nor Flash SPI Flash Nand_Flash介绍

Flash编程之前,必须将对应的块擦除,而擦除的过程就是将所有位都写为1的过程,块内的所有字节变为0xFF

Flsah 分为两大类 Nor Flash和 Nand Flash


Nor Flash 又分为SPI Flash(串行 使用SPI通信)和 Nor Flash(并行 总线上传输)

SPI Flash 每次传输一个bit位的数据,传输速度慢,但是价格便宜,任意地址读数据,擦除按扇区进行

Nor Flash : 每次传输一个字节 ,速度快任意地址读数据擦除按扇区进行

Nand Flash:芯片操作是以“块”为基本单位.NAND闪存的块比较小,一般是8KB,然后每块又分成页,页大小一般是512字节.要修改NandFlash芯片中一个字节,必须重写整个数据块,读和写都是按照扇区进行的。


Nor Flash 应用地址举例

flash 低地址开始存放数据,占得内存大小按数据类型分配,一个地址一个字节(0xff)。地址自动向上增加

如存放一个uint16_t数据 占用2个字节。如果地址从0x90000000存放数据,则低位占据0x90000001高位占据0x90000002。如果从0x90000001开始取uint16_t数据,则会取出上个数据的高位和下个数据的低位

#defint FLASH_ADDR 0x90000000

ipAddr = (volatile uint16_t  *)FLASH_ADDR + 1; 与 ipAddr = (volatile uint16_t  *)0x90000002等效

WordProgram(1, 0x2665);  //分配了uint16_t的两个地址,低地址上写0x65,高地址写0x26


你可能感兴趣的:(内存,Flash,Flash,Flash,SPI,nor,Nand_Flash介绍)