亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? k9s1208.c

?? 注意編譯環境:ARM-Linux
?? C
字號:
#include <string.h>
#include "def.h"
#include "option.h"
#include "2410addr.h"
#include "2410lib.h"

#define NF_CMD(cmd)	{rNFCMD=cmd;}
#define NF_ADDR(addr)	{rNFADDR=addr;}	
#define NF_nFCE_L()	{rNFCONF&=~(1<<11);}
#define NF_nFCE_H()	{rNFCONF|=(1<<11);}
#define NF_RSTECC()	{rNFCONF|=(1<<12);}
#define NF_RDDATA() 	(rNFDATA)
#define NF_WRDATA(data) {rNFDATA=data;}

#define NF_WAITRB()    {while(!(rNFSTAT&(1<<0)));} 
	    //wait tWB and check F_RNB pin.   

#define ID_K9S1208V0M	0xec76

#if 1
// HCLK=100Mhz
#define TACLS		0//0  //1clk(0ns) 
#define TWRPH0		3//2  //3clk(25ns)
#define TWRPH1		0//0  //1clk(10ns)  //TACLS+TWRPH0+TWRPH1>=50ns
#else
// HCLK=50Mhz
#define TACLS		0  //1clk(0ns)
#define TWRPH0		1  //2clk(25ns)
#define TWRPH1		0  //1clk(10ns)
#endif

// 1block=(512+16)bytes x 32pages
// 4096block

// A[23:14][13:9]
//  block   page

void __RdPage512(U8 *bufPt); 

int NF_ReadPage(U32 block,U32 page,U8 *buffer)
{
    int i;
    register U8 * bufPt=buffer;
    unsigned int blockPage;
    U8 ecc0,ecc1,ecc2;
    
    U8 se[16];	   
    
    //page=page&0x1f;
    blockPage=(block<<5)+page;
    NF_RSTECC();    // Initialize ECC
    
    NF_nFCE_L();    
    NF_CMD(0x00);   // Read command
    NF_ADDR(0);	    // Column = 0
    NF_ADDR(blockPage&0xff);	    //
    NF_ADDR((blockPage>>8)&0xff);   // Block & Page num.
    NF_ADDR((blockPage>>16)&0xff);  //

    for(i=0;i<5;i++); //wait tWB(100ns)
    
    NF_WAITRB();    // Wait tR(max 12us)


#if 0
    i=512;
    while(i--!=0)
    {
    	*bufPt++=NF_RDDATA();	// Read one page
    }
#elif 0
    //DMA doens't work.
    rSRCPND=BIT_DMA0;
    rDISRC0=0x4e00000c; //NF_RDDATA()
    rDISRCC0=(1<<0); //arc=AHB,src_addr=fix
    rDIDST0=(unsigned)bufPt;
    rDIDSTC0=(0<<0); //dst=AHB,dst_addr=inc;
    rDCON0=(1<<31)|(1<<30)|(1<<29)|(1<<28)|(1<<27)|(0<<23)|(1<<22)|(0<<20)|(512/4);
	   //Handshake,AHB,interrupt,(4-burst),whole,S/W,no_autoreload,byte,count=512;
    rDMASKTRIG0=(1<<1)|(1<<0);

    while(!(rSRCPND & BIT_DMA0));
    rSRCPND=BIT_DMA0;

#elif 1
    __RdPage512(bufPt);
#endif

    ecc0=rNFECC0;
    ecc1=rNFECC1;
    ecc2=rNFECC2;

    se[0]=NF_RDDATA();
    se[1]=NF_RDDATA();
    se[2]=NF_RDDATA();
    NF_RDDATA();
    NF_RDDATA();
    se[5]=NF_RDDATA();

    NF_nFCE_H();    

    if(ecc0==se[0] && ecc1==se[1] && ecc2==se[2] && se[5]==0xff)
    {
	//Uart_Printf("[ECC OK:%x,%x,%x]\n",se[0],se[1],se[2]);
    	return 1;
    }
    else
    {
	//Uart_Printf("[ECC ERROR(RD):read:%x,%x,%x, reg:%x,%x,%x]\n",
		//se[0],se[1],se[2],ecc0,ecc1,ecc2);
    	return 0;
    }    	
}


int NF_IsBadBlock(U32 block)
{
    int i;
    unsigned int blockPage;
    U8 data;
    
    
    blockPage=(block<<5);	// For 2'nd cycle I/O[7:5] 
    
    NF_nFCE_L();    
    NF_CMD(0x50);		// Spare array read command
    NF_ADDR(517&0xf);		// Read the mark of bad block in spare array(M addr=5) 
    NF_ADDR(blockPage&0xff);	// The mark of bad block is in 0 page
    NF_ADDR((blockPage>>8)&0xff);   // For block number A[24:17]
    NF_ADDR((blockPage>>16)&0xff);  // For block number A[25]

   for(i=0;i<10;i++);	// wait tWB(100ns) //?????
    
    NF_WAITRB();	// Wait tR(max 12us)
    
    data=NF_RDDATA();

    NF_nFCE_H();    

    if(data!=0xff)
    {
    	//Uart_Printf("[block %d has been marked as a bad block(%x)]\n",block,data);
    	return 1;
    }
    else
    {
    	return 0;
    }
}



void NF_Reset(void)
{
    int i;
   
    
    NF_nFCE_L();

    NF_CMD(0xFF);	//reset command

    for(i=0;i<10;i++);  //tWB = 100ns. 

    NF_WAITRB();      //wait 200~500us;
     
    NF_nFCE_H();
}



void NF_Init(void)
{
    rNFCONF=(1<<15)|(1<<14)|(1<<13)|(1<<12)|(1<<11)|(TACLS<<8)|(TWRPH0<<4)|(TWRPH1<<0);	
    // 1  1    1     1,   1      xxx,  r xxx,   r xxx        
    // En 512B 4step ECCR nFCE=H tACLS   tWRPH0   tWRPH1
    
    NF_Reset();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩高清影院| 色88888久久久久久影院按摩 | 精品一区二区三区蜜桃| 亚洲成人一区在线| 亚洲chinese男男1069| 亚洲一区二区成人在线观看| 亚洲国产精品天堂| 亚洲不卡一区二区三区| 日本中文字幕一区二区有限公司| 日韩精品成人一区二区在线| 五月激情综合网| 美洲天堂一区二卡三卡四卡视频 | 欧美激情一区二区三区在线| 国产欧美日韩在线| 一区二区三区欧美日韩| 午夜精品免费在线| 久久精品久久99精品久久| 激情文学综合插| 波多野结衣亚洲| 欧美在线一区二区三区| 欧美精品一二三| 久久久99久久| 一区二区三区四区五区视频在线观看| 亚洲综合另类小说| 国产主播一区二区三区| 一本到不卡精品视频在线观看| 欧美电影在线免费观看| 国产亚洲精品bt天堂精选| 亚洲美腿欧美偷拍| 美女被吸乳得到大胸91| av中文字幕在线不卡| 欧美电影一区二区| 一区在线观看免费| 免费在线观看成人| 91免费观看国产| 欧美一区二区国产| 亚洲男同1069视频| 久草中文综合在线| 欧美在线视频全部完| 久久久久一区二区三区四区| 亚洲一区二三区| 国产成人午夜视频| 欧美电影精品一区二区| 亚洲三级在线免费观看| 精品一区二区三区不卡| 色视频成人在线观看免| 久久女同互慰一区二区三区| 午夜伦欧美伦电影理论片| 99久久精品国产毛片| 欧美成人vps| 亚洲成精国产精品女| 91免费在线看| 欧美高清在线一区二区| 久久99日本精品| 欧美一级二级在线观看| 亚洲精品视频在线| a4yy欧美一区二区三区| 国产亚洲综合性久久久影院| 日韩av电影免费观看高清完整版在线观看| 91欧美一区二区| 中文字幕亚洲区| 成人不卡免费av| 亚洲国产精品成人综合| 国产成人在线视频网址| 久久久国产午夜精品| 久久成人免费网站| 日韩欧美色综合网站| 水野朝阳av一区二区三区| 欧美日本乱大交xxxxx| 丝袜美腿成人在线| 91精品国产免费| 美国十次综合导航| 久久夜色精品国产欧美乱极品| 麻豆成人免费电影| 精品99999| 国产精品一二一区| 亚洲国产成人午夜在线一区| 成人毛片视频在线观看| 一区在线中文字幕| 欧美午夜一区二区三区| 五月婷婷色综合| 日韩午夜在线影院| 国产一区在线观看视频| 国产精品久久久久天堂| 一本一本大道香蕉久在线精品| 伊人性伊人情综合网| 欧美性极品少妇| 美国av一区二区| 欧美国产激情二区三区| 欧洲视频一区二区| 蜜桃精品视频在线观看| 国产日韩欧美精品在线| 91黄色免费看| 久草中文综合在线| 国产精品国产三级国产aⅴ原创| 91麻豆国产自产在线观看| 亚洲国产成人精品视频| 精品国产1区二区| av一区二区三区黑人| 亚洲一区二区视频| 精品久久久久一区| 99久久夜色精品国产网站| 偷拍日韩校园综合在线| 国产欧美一区二区精品性色超碰| 一本一道久久a久久精品| 日韩二区三区在线观看| 国产精品看片你懂得| 91精品蜜臀在线一区尤物| 国内精品免费**视频| 一区二区三区四区亚洲| 欧美精品一区二区三区久久久 | 日韩中文字幕不卡| 欧美激情综合在线| 欧美一区二区三区公司| 91美女视频网站| 精品一二三四区| 亚洲小说欧美激情另类| 欧美极品xxx| 精品国精品国产尤物美女| 91福利视频久久久久| 丁香天五香天堂综合| 美日韩一区二区三区| 怡红院av一区二区三区| 国产精品丝袜久久久久久app| 欧美日本韩国一区| 一本大道久久精品懂色aⅴ| 国产一区二区伦理| 日韩国产欧美在线视频| 亚洲精品伦理在线| 国产精品拍天天在线| 精品99久久久久久| 日韩欧美国产一区二区在线播放| 欧美亚洲一区三区| 色拍拍在线精品视频8848| caoporm超碰国产精品| 国产一区二区三区| 久久不见久久见免费视频1| 日韩精品一区第一页| 夜夜嗨av一区二区三区网页| 亚洲欧洲成人av每日更新| 国产无一区二区| 国产偷国产偷亚洲高清人白洁| 日韩三级高清在线| 日韩精品一区二区三区在线 | 国产精品毛片久久久久久久| 久久综合av免费| 久久久久久久综合狠狠综合| 精品国产一区二区三区四区四 | 国产亚洲欧美色| 欧美精品一区视频| 26uuu久久天堂性欧美| 337p粉嫩大胆噜噜噜噜噜91av| 欧美成人a在线| 欧美va在线播放| 国产亚洲欧美激情| 国产精品人人做人人爽人人添| 欧美激情一区二区三区不卡| 亚洲国产精品高清| 中文字幕一区二区三区精华液| 亚洲日本成人在线观看| 亚洲精品菠萝久久久久久久| 亚洲欧美日韩中文播放| 亚洲一区二区三区四区的| 亚洲成人自拍网| 久久精品国内一区二区三区| 国产剧情在线观看一区二区| 99在线精品观看| 欧美日免费三级在线| 日韩精品中文字幕在线不卡尤物 | 欧美少妇一区二区| 日韩西西人体444www| 久久久久久一级片| 亚洲日本va午夜在线电影| 亚洲一区二区成人在线观看| 久久国产精品99精品国产| 成人一级片在线观看| 在线视频一区二区三| 欧美一区二区三区系列电影| 国产网红主播福利一区二区| 亚洲一区二区在线免费看| 久久国产精品一区二区| 91影视在线播放| 日韩午夜精品电影| 亚洲男女一区二区三区| 美日韩黄色大片| 91小宝寻花一区二区三区| 91精品国产免费久久综合| 中文字幕精品—区二区四季| 亚洲成人综合视频| www.亚洲国产| 日韩午夜三级在线| 一区二区不卡在线播放| 国产麻豆精品95视频| 欧美影院一区二区| 国产精品久久久久婷婷| 免费看黄色91| 在线亚洲精品福利网址导航| 日本一区二区三区四区在线视频 | 一本久久a久久精品亚洲| 欧美不卡一区二区|