Re: External memory via SQI (SST26)
i am unable to find proper thread to post Write/Read issue of flash memory , so i am posting here.
It is regarding SST26VF064B Flash Memory interface with SPI1/SSP – Write to memory Issue
I have interfaced SST26VF064B Flash Memory with SPI1/SSP of LPC2138 ARM microcontroller.
Issue- I am facing an issue to choose Serial clock Rate selection to operate SPI1.
After APB divider I am using 15 MHz for peripheral.
Configuration- I have interfaced SPI1/SSP MOSI (Pin54), MISO (Pin53), SSEL (Pin55), SCK (pin47) lines with memory pins through 10k Pullup resistor. this is single master and single Slave . I want to make transmission in master mode and SPI mode And initialized SPI1 the below:-
I have defined SSEL as #defined SS 00100000 // p0.20
PINSEL1 |=0x000002A8; // P0.17, P0.18, P0.19, P0.20 are set as SCK, MISO, MOSI and CE (SPI1)
IODIR0 |= SS; // SSEL is output
IOSET0 |= SS; // set SSEL to high
SSPCPSR=0x02; // 2 for master mode
// 8 bit data of tx/rx, SCR (Serial clock rate as 10 =0A(hex) ) PCLK/(CPSDVSR*[SCR+1])
SSPCR1=0x02; //normal mode selection, SSp controller enabled
I do not understand that how to select SCR (serial clock rate) in SSPCR0 register???? So I can make write and read properly.
I have used formula- PCLK/(CPSDVSR*[SCR+1]) // 15/( 2[2+1]) = 2.5MHZ
I have checked these two , SSPCR0 and SSPCPSR with multiple values, even checked for PCLK=60Mhz. But it is neither writing nor reading passed string to memory.
For writing and reading to/from memory I have checked BSY flag in status register.
while (!(SSPSR & 0x10) );
Also I have send the memory instruction/command prior WRITE and READ operation. WRITE_EN (0x06) and 0x02 for 1 to 256 byte write. Then send actual data in format (Address, data length , actual data string) as My_Write(0x000004,4,&MSG)
Similarly send 0x03 prior to read data from memory. , then read data byte of the same address, length and string aaray.
I am receiving 0xFF after reading. I think this receive is dummy byte and writing is not happening.
Hope somebody can give suggestion to SCR selection and writing commands.