Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Annoying Problem With SPI interface to Atmel Dataflash

2006-05-18 by gogotimmo

Hi-

I am having probles with the LP32138 SSP (SPI) interface to an Atmel 
dataflash (AT45DB161). I believe it has to do with the chip select 
implementation. To read the status register of the Atmel dataflash, 
for example, the device requires an opcode 'write' followed by 
a 'read'. The write works fine, but the 'read' fails. I believe it is 
failing because the chip select gets deasserted between the read and 
write, thereby resetting the internal state machine of the data flash. 
The datasheet of the atmel memory has timing diagrams that show the CS 
asserted throughout the entire transfer with no transitions between 
frames.  Actually, it looks like the LPC2138 spi chip select gets 
deasserted between each frame in a continuous transfer. If true, this 
bites. The only workaround I can think of is to use a GPIO pin to 
drive the CS manually. Since I'm already out of pins, this isn't a 
great option for me. I thought of tricking the SPI peripheral by 
sending an 8-bit opcode justified in a 16-bit frame, which would 
probably work, but will fail when reading an array of memory 
addresses. These Atmel dataflash devices are extremely popular, so 
someone must have had similar issues.

Also, I don't mean to sound rude, but I have already looked at the SPI 
code examples. 

Any help is appreciated-
Thanks-
Tim

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.