Hello everyone, I am going on a project using MK20FN1M0VLQ12, using NAND Flash Controller (NFC) built in the MCU to control Samsung 2GB of flash, the part number is K9WAG08U1M,and its specific parameters you can refer to the attachments. TThe Samsung 2GB flash contains two 1GB of FLASH,one of them is selected by the pin CE0, CE1 , and its READY/BUSY state feedback is given by the R/B0 or R/B1 pin. The K series MCU have NFC chip select CE0, CE1, and just one READY/BUSY pin (R / B). My design connects the two pins ,R/B0 and R/B1 of the Samsung 2GB flash hardware ,together to the NFC's R / B pin.And the CE0,CE1 are connected to their corresponding NFC pins. Using the Freescale official DEMO, when the NFC chip select CE0 is enable, choosing the first piece 1G of the FLASH, the block erase, page program, page read functions are right, but when the second piece CE1 is enable, the write error occurs. The specific phenomenon is: when either block erase or page write is done , then I read out the value of the corresponding address that has been erased or writen,but the value are weird: dozens of 0x30303030 appears at the begin of the data that read out, then the correct data seems like appear by a left shift. Data is shown in the attachment text. Program is also shown in the attachment.
Ps: my colleague using the K60 chip board encountered the same problem. Initially concluded that the problem should be in the CE chip select and R / B pins, or the Timing aspects. Please help to analyze the problem combining the information given above. I'm confused by this problem for a long time,Please provide some help, thank you!!!
Original Attachment has been moved to: SAVE2013-7-2_16-28-39.TXT.zip
Original Attachment has been moved to: NandFlash.zip