AT45DB641E dataflash

Started by gowtham_kk 4 years ago5 replieslatest reply 4 years ago127 views

In the process the migrating from using a memory chip AT45DB081D (1MB) to AT45DB641E (8MB) for little larger space, I got stuck.

I was using the drivers for the dataflash working perfectly fine with AT45DB081D. Even they work good when using with AT45DB641E, configured to half of its size.

In using the external dataflash, it should be initialized with the few of the configuration parameters, of which "number of pages" is one parameter. 

The AT45DB641E does contain 32768 pages. When configured to 16000 pages, the system is working normal. But when configured to any value above 16000, it is not working.

So I tried to read the bin from the dataflash,

1. When configured to 16000, able to get what is written.

2. When configured to 32768 (any value >16000), it is observed that few bytes of .bin file are taken and repeatedly written for the area to which the bin file occupies.

Please suggest me what can be the issue.

Thanks in advance

#atmel #flash #adesto

[ - ]
Reply by BVRameshJuly 17, 2020

Hello Gowtham,

I suggest you to write small code to see whether you can write all pages and read them. As far as data sheet of both flashes are concerned it is supposed to scale accordingly. If your program works, then there is problem with driver and you can look for updated driver or you write the driver. If your program canno access there may be some problem with flash.

[ - ]
Reply by indigoredsterJuly 17, 2020

What processor are you using? 

What drivers? 

Who wrote them? A

Are you using the command set: 3byte addressing correctly. 

Not enough info to go on.

[ - ]
Reply by gowtham_kkJuly 17, 2020

Processor: AT91SAM9260

Drivers : From Atmel dated 2012

Yes, I am using the command set as provided in the dataflash datasheet.

[ - ]
Reply by KocsonyaJuly 17, 2020

I would look into the driver source code. 16000 is a very human number, not a computer one. So it is unlikely that it is bits being chopped off or anything like that, it;s more likely that whoever wrote the drivers plucked a constant out of thin air, thinking that it is large enough for the expected lifetime of the product family. 

You know, "640KB should be enough for everyone"...

[ - ]
Reply by tasbihmrJuly 17, 2020


I remember I used the SAM7X microcontroller with the AT45DB321, and I faced a lot of problems reading and writing. Are you sure all your interconnections and PCB are correctly setup? The SPI clock and addressing must also be setup correctly. Are you using the ATMEL SDK for programming 9260 ?