2016-04-11 02:00 AM
Hello, dears!
I'm stucking around interfacing the NAND to STM32F746The nand is (NAND512W3A2CN6)Thus we have 512 bytes (0.5 kBytes) per Pagebut in the HAL drivers description we can see:PageSize - NAND memory page (without spare area) size measured in K. bytesAnd more:SpareAreaSize - NAND memory spare area size measured in K. bytesbut accordind the datasheet we have only 16 bytes (0.016 ?? of kilobyte?)Where am I wrong? My configuration is below. hnand1.Init.NandBank = FMC_NAND_BANK3;hnand1.Init.Waitfeature = FMC_NAND_WAIT_FEATURE_ENABLE;
hnand1.Init.MemoryDataWidth = FMC_NAND_MEM_BUS_WIDTH_8;
hnand1.Init.EccComputation = FMC_NAND_ECC_ENABLE;
hnand1.Init.ECCPageSize = FMC_NAND_ECC_PAGE_SIZE_512BYTE;
hnand1.Init.TCLRSetupTime = 8;
hnand1.Init.TARSetupTime = 8;
/* hnand1.Info */
hnand1.Info.PageSize = 512;
hnand1.Info.SpareAreaSize = 16;
hnand1.Info.BlockSize = 32;
hnand1.Info.BlockNbr = 4096;
hnand1.Info.ZoneSize = 4096;
/* ComSpaceTiming */
ComSpaceTiming.SetupTime = 8;
ComSpaceTiming.WaitSetupTime = 12;
ComSpaceTiming.HoldSetupTime = 8;
ComSpaceTiming.HiZSetupTime = 8;
/* AttSpaceTiming */
AttSpaceTiming.SetupTime = 8;
AttSpaceTiming.WaitSetupTime = 12;
AttSpaceTiming.HoldSetupTime = 8;
AttSpaceTiming.HiZSetupTime = 8;The Vendor ID and Product ID is reading proper by 0x20 and 0x76 following twiceHAL_NAND_Read_ID(&hnand1, &NAND_ID);Thanks! #stm32f7-nand