Wince6使用K9F4G08U0A升级至512MNandFlash
发布时间:2020-12-15 06:51:12 所属栏目:百科 来源:网络整理
导读:1. WINCE600PLATFORMSMDKV210SRCCOMMONNANDFLASHFMDcfnand.h中只需要在这个数组里面增加K9F4G08U0A相关的参数 static NAND_FLASH_SPECg_supportedNAND[] = {{0xEC,0xDC,SLC_NAND,4096,64,2112,2048,7,7},//K9F4G08U0A{0xEC,0xDA,//K9F2G08U0A{0xEC,0x
1. WINCE600PLATFORMSMDKV210SRCCOMMONNANDFLASHFMDcfnand.h中只需要在这个数组里面增加K9F4G08U0A相关的参数 static NAND_FLASH_SPEC g_supportedNAND[] = { {0xEC,0xDC,SLC_NAND,4096,64,2112,2048,7,7},//K9F4G08U0A {0xEC,0xDA,//K9F2G08U0A {0xEC,0xF1,1024,//K91FG08U0C {0x00,0x00,0} }; 2. WINCE600PLATFORMSMDKV210SRCBOOTLOADERSTEPLDRnand.c中,做如下修改: void NAND_Init(void) { DWORD ReadID; BYTE cMID,cDID; // Configure BUS Width and Chip Select for NAND Flash // Initialize NAND Flash Controller rNFCONF = (TACLS << 12) | (TWRPH0 << 8) | (TWRPH1 << 4) | (0<<0); rNFCONT = (0<<17)|(0<<16)|(0<<10)|(0<<9)|(0<<8)|(1<<7)|(1<<6)|(1<<5)|(1<<4)|(0x3<<1)|(1<<0); rNFSTAT = (1<<4); NF_Reset(); // Get manufacturer and device codes. if (!ReadFlashID(&ReadID)) { //Uart_SendString("ID Errn"); //Uart_SendDWORD(ReadID,1); //Uart_SendString("!n"); } cMID = NF_GET_MID(ReadID); cDID = NF_GET_DID(ReadID); switch(cMID) { case 0xEC: { switch(cDID) { case 0xDA: // Samsung 2Gbit SLC - K9F2G08U0A { g_bLargeBlock = TRUE; NEED_EXT_ADDR = TRUE; break; } case 0xDC: // Samsung 4Gbit SLC - K9F4G08U0A,Brian Liu { g_bLargeBlock = TRUE; NEED_EXT_ADDR = TRUE; break; } case 0xF1: // Samsung 1Gbit SLC - K91FG08U0C { g_bLargeBlock = TRUE; NEED_EXT_ADDR = FALSE; break; } default: // Not supported NAND while(1); break; } break; } default: // Not supported NAND while(1); break; } } 完毕。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |