We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I have 2 off Atmel AT49BV322D devices in my design to provide a 32 bit wide memory. I am using the flash Memory Download Setup option AT49xV32x Dual Flash with address range set to 80000000H - 807FFFFFH. The device size is reported to be 8M (although the device is actually 2M * 16). My design has LPC2214 address lines A2 - A22 connected to the AT49BV322D address lines A0 - A20. I have used a flash.ini file to configure the BCFG0 and PINSEL2 registers.
When I try to download I get the Erase Failed! message.
Am I using the correct flash memory driver? Should I add another AT49xV32x DualFlash to the download setup? Is there an updated version of this driver with the correct memory size?
I'm happy that it works now.
However there are still some points which are not clear:
Keil algorithm uses Toggle on I/O6 which is always available regardless of Configuration Mode (Mode 00 or 01). The algorithm doesn't touch the Configuration register (the default value after reset is 00). Therefore changing Configuration Mode to 01 should not be necessary.
Also I see that in the latest Flash.ini you have changed the configuration of BCFG0 (Bus Configuration for Bank 0). Now RBLE bit is 0 (before it was 1). So maybe this was the actual problem. I would need to see the schematics of the CPU <> Flash connection to be able to judge this.
Anyway you can ignore the above remarks if you are happy that it works or you can look further into this to clarify the remaining questions.