

其中,delay()为延时子函数,参数为ms级,delay(1)即延时1ms。加入延时,是为了保证存储器在准备好的情况下才进行读写操作。

(3)连续读函数
M25P16允许发出读指令后,连续读取数据,这一模式极大提高了总线效率。数据读取函数的参数包括address:32位地址;block:读数据缓冲区指针;n:一次连续读取的字节数,代码如下:


M25P16的连续读操作与连续写不同的是,无论READ还是FAST_READ,在起始地址处1字节的数据读出后,会自动寻址更高地址处的数据,故程序中无需address++语句。
除了对M25P16的初始化、读写之外,经常还要对其进行擦除操作,擦除有扇区擦除和整体擦除2种方式,执行数据擦除将使内部所有数据变为FFH。擦除操作与写操作类似,在此不再赘述。
结 语
本文介绍的M25P16与PIC16F877A的接口已应用于自来水流量数据采集的本地存储中。运行稳定可靠,未发现数据丢失现象,对其他应用有一定的参考价值。
上一页 [1] [2] [3] 下一页