首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 嵌入开发 >

[][ARM 裸机][NAND Flash读写]关于NF_WAITRB与NF_DETECT_RB

2012-06-19 
[求助][ARM 裸机][NAND Flash读写]关于NF_WAITRB与NF_DETECT_RB网上的关于读写NAND Flash的文章中有如下两

[求助][ARM 裸机][NAND Flash读写]关于NF_WAITRB与NF_DETECT_RB
网上的关于读写NAND Flash的文章中有如下两个宏定义:
#define NF_WAITRB() {while(!(rNFSTAT&(1<<0)));} //等待nandflash不忙
#define NF_DETECT_RB() {while(!(rNFSTAT&(1<<2)));} //等待RnB信号变高,即不忙
这两个宏定义都是等待nandflash就绪,但数据手册中对rNFSTAT[2]的描述为:

When RnB low to high transition is occurred, this value set
and issue interrupt if enabled. To clear this value write ‘1’.
0: RnB transition is not detected
1: RnB transition is detected
Transition configuration is set in RnB_TransMode
(NFCONT[8]).

那么为什么这两者都能检测就绪呢?请高手指教。

[解决办法]
while(!(rNFSTAT&(1<<0))); //等待nandflash不忙
这反映的是忙与不忙的状态,不忙,电平始终为高。
  
while(!(rNFSTAT&(1<<2))); //等待RnB信号变高,即不忙
这是反映是否有低到高的变化。如果在出现高电平后,你写1清零该位后,则即使现在不忙,电平也还是低的。
 

热点排行