I am now trying to write my own flash programming algorithm since there is not one for my EN29LV320 flash memory in realview MDK. And as I was told in the online help, I should find a model to modify, which should be a short cut. I have looked over keil\ARM\Flash directory, however I just find several algorithm about external flash and they are all beginning with AT49, am I right? Since my flsh is 4MB and 16bit, so I guess AT49xV32x maybe the right one for me, but I download the dadasheet of AT49BV320D,AT49BV320S,AT49BV322D,AT49SV322D, surprisingly their commands are different from the ones offered in AT49xV32x. For example,
EraseSector (unsigned long adr) { // Start Erase Sector Command M16(base_adr + 0x0AAA) = 0xAA; M16(base_adr + 0x1554) = 0x55; M16(base_adr + 0x0AAA) = 0x80; M16(base_adr + 0x0AAA) = 0xAA; M16(base_adr + 0x1554) = 0x55; M16(adr) = 0x30; return (Polling(adr)); // Wait until Erase completed }
the second statement write 0x1554 to address bus and 0x55 to data bus, but I can't find this command in datasheet. Can anyone tell me what does this mean and which flash is right one for AT49xV32x Thanks a lot!
View all questions in Keil forum