物理连接和接口:外部flash是一个独立的存储设备,需要通过接口与单片机连接和通信,单片机Flash是嵌入在单片机中的存储器。里面是分页的,所以你可以逐页阅读,闪存芯片为SPI接口,建议在读取Flash时使用DMA,否则高速DataFlash将看不到高速。

比如PIC的单片机大部分都有配备,但是很少有程序放在外部flash中,因为总线的速度比单片机内部的速度低很多,所以效率低,也不会写入外部(虚拟内存?最好把CPU换成更小的闪存,这样既省钱又能扩展内存。目前一些单片机支持读写自己的闪存,单片机的闪存容量比较小,从几十KB到几MB不等。

一些芯片有EEPROM,闪存存储程序。当微控制器通电时,它将自动从这里读取代码并开始运行。外部ram的读写与使用内部ram时相同。您只需要设置编译器来指示外部RAM的位置和大小。推荐带SPI接口的铁电存储器,有足够的速度和容量,代码实现简单,非易失性,价格较高。

在擦除ROM时,还应该执行一个特殊的刷新程序,但在删除数据时,基本单位不是字节,而是扇区(也称为块),扇区的大小因制造商而异。仅在写入时,以字节为最小单位写入。这是目前应用最广泛的方式,也给节目空间带来了不小的风险。建议不要使用。

EEPROM是一种断电时不会丢失数据的存储器,通常用于存储设置。从用户的角度来看,最大的区别是在写入新数据之前必须擦除FLASH,而且往往只能擦除整个页面,没有办法擦除一个字节,换句话说,你只能分块读写,尤其是写。考虑AT、AT或MSP等外部EEPROM,可以存储大量的程序代码和数据。


文章TAG:单片  Flash  读取  芯片  接口  
下一篇