external memory interfacing with PSoC 3

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
ShBa_282106
Level 3
Level 3
25 replies posted 10 replies posted 5 replies posted

Hi!

   

can any one help me with a small project using external memory interface?

   

Thnx in advance 🙂

   

Neha. 

0 Likes
12 Replies
Anonymous
Not applicable

 Hi Neha,

   

There is an example project illustrating EMIF. Here the data written to external memory is read back using a DMA and compared. 

   

Thanks,

   

srim

0 Likes
Anonymous
Not applicable

neha can you give details about aim of your project?

   

basically what you want to do after interfacing external memory and which type of memory and memory interface are you aiming(like sd card etc)

0 Likes
Anonymous
Not applicable

 Attached another simple project with asynchronous EMIF sans DMA. Address width - 8bits and data width - 8 bit. 

   

 

   

Thanks,

   

srim

0 Likes
Anonymous
Not applicable

 Problem with attaching the project.

0 Likes
Anonymous
Not applicable

Attaching top design and main files.

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

 #include <device.h>

   

#define INIT_VALUE  (0xf0u)

   

#define PACKET      (0x50u)

   

#define FALSE       (0x0u)

   

#define TRUE        (0x1u)

   

 

   

#define SRC_ADDRESS (0x00000000u)

   

#define RET_ADDRESS (0x00000200u)

   

 

   

uint8 sent[PACKET] _at_ SRC_ADDRESS; /* Array of data which will be store in the memory */

   

uint8 ret[PACKET] _at_ RET_ADDRESS;  /* Array of data which will be read from the memory */ 

   

 

   

uint8 result=(0u);

   

uint8 i;

   

void *addr;

   

uint8 error=0; 

   

 

   

void main()

   

{

   

      /* Initialize Error_Pin*/

   

    Error_Pin_Write(FALSE); 

   

    /* Initialize Pass_Pin*/

   

    Pass_Pin_Write(FALSE); 

   

 

   

    /* Emif component start API */

   

    EMIF_1_Start();

   

  

   

    /* Write data in to the external memory*/

   

    sent[0] = INIT_VALUE;

   

for (i=(0u); i <= PACKET; i++) 

   

    {

   

        sent[i+1] = sent + (1u);

   

        addr = CYDEV_EXTMEM_BASE + i;

   

        CY_SET_XTND_REG8(addr, sent);

   

}

   

    

   

    /* Read data from the external memory*/

   

for (i=(0u); i < PACKET; i++) 

   

    {

   

        addr = CYDEV_EXTMEM_BASE + i;

   

        ret = CY_GET_XTND_REG8(addr);

   

    }   

   

 

   

    /* Compare Write to and Read from external memory values */

   

for (i=(0u); i < PACKET; i++) 

   

    {

   

        if(sent==ret)

   

  error=0;

   

else

   

 error++;

   

    }    

   

 

   

    /* Set ERROR flag if compared data not equal */

   

   if(error)

   

    Error_Pin_Write(1);

   

   else

   

    Pass_Pin_Write(1);

   

while(1);    

   

}

   
        
0 Likes
Anonymous
Not applicable

Neha,I'm curious about what memory chip (Part name/number) you are trying to interface with the PSoC3/5.Which chip is it?

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

I had my best experiences with uploading a project here with the following steps:

   

From Creator:

   

Build -> Clean Project

   

File -> Create Workspace Bundle(minimal)

   

Then upload the resulting .Zip archieve here in this forum.

   

 

   

Happy zipping

   

Bob

0 Likes
ShBa_282106
Level 3
Level 3
25 replies posted 10 replies posted 5 replies posted

thnx Srim...i got the knack of it...will post the development as a small project 🙂

   

and Bob thnx fr 'zippin' info

   

Regards

   

Neha

0 Likes
Anonymous
Not applicable

may i know  what type of  memory chip (Part name/number) can be interfaced with the PSoC3/5.Which chip is it?

0 Likes
Anonymous
Not applicable

 Hi,

   

      One of Asynchronous SRAM which can be interfaced with PSoC 3 is CY7C1061AV33.

   

 

   

Regards, Aniruddha

0 Likes
ShBa_282106
Level 3
Level 3
25 replies posted 10 replies posted 5 replies posted

Hi, Thanks

   

Is it required to remove C18(CMOD) capacitor from the PSoC3 Module to use EMIF everytime?

   

EMIF_Example advises  that

0 Likes