PSoC4 Em_EEPROM 2.0 Fixed Address

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

cross mob
lock attach
Attachments are accessible only for community members.
lili_285866
Level 1
Level 1
Distributor - Zenitron(GC)
5 replies posted 5 questions asked 5 sign-ins

Hi Sirs,

Can you help add PSoC4 Em_EEPROM 2.0 Fixed Address 0xf800 code , I step by step from user component datasheet ,My I2C is abnormal.I spent a very long time testing and did not succeed in flash the correct address.The attachment project is that I test that the non-fixed address can work.

Thanks,

Lin

0 Likes
1 Solution
lock attach
Attachments are accessible only for community members.
VenkataD_41
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi Lin,

Please go through section "Placing EEPROM Storage at Fixed Address" in page number 3 of the Emulated EEPROM component datasheet. It has the step by step procedure to keep the Emulated EEPROM at particular address. Basically, you need to modify the linker script and in that you have to mention the address where you want to add your section.

Please note that the place you allow for Emulated EEPROM in flash should not corrupt the code memory in flash. We generally recommend you not to place Emulated EEPROM at particular address unless there is a particular need. This is because the implementation of Emulated EPROM 2.0 component internally is little complex and internal to Cypress. So the location of data storage is not straight forward if you read the Flash.

Can you please tell us what is the need for placing Emulated EEPROM at particular address location in the present application?

Please refer EzI2C_Slave_SCB code example in PSoC Creator and let us know if you face any issues.

Please find the attached project for reference for placing Emulated EEPROM at particular address.

Thanks

Ganesh

View solution in original post

0 Likes
2 Replies
lock attach
Attachments are accessible only for community members.
VenkataD_41
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi Lin,

Please go through section "Placing EEPROM Storage at Fixed Address" in page number 3 of the Emulated EEPROM component datasheet. It has the step by step procedure to keep the Emulated EEPROM at particular address. Basically, you need to modify the linker script and in that you have to mention the address where you want to add your section.

Please note that the place you allow for Emulated EEPROM in flash should not corrupt the code memory in flash. We generally recommend you not to place Emulated EEPROM at particular address unless there is a particular need. This is because the implementation of Emulated EPROM 2.0 component internally is little complex and internal to Cypress. So the location of data storage is not straight forward if you read the Flash.

Can you please tell us what is the need for placing Emulated EEPROM at particular address location in the present application?

Please refer EzI2C_Slave_SCB code example in PSoC Creator and let us know if you face any issues.

Please find the attached project for reference for placing Emulated EEPROM at particular address.

Thanks

Ganesh

0 Likes
lili_285866
Level 1
Level 1
Distributor - Zenitron(GC)
5 replies posted 5 questions asked 5 sign-ins

Hi Ganesh,

Can you help me see if there are any errors? for my step .

/--------------------------------------------------------------------------------

1.I add code to cm0plusgcc.ld as below is right ?

    /* place .MY_section at adress 0xf800,  */

.MY_section 0xf800 : ALIGN (4)

{

  KEEP (*(.MY_section))

} >rom

/----------------------------------------------------------------------------------

2.and revise main.c

uint8_t eepromArray[15] ;

replace this :

unint8_t eepromArray[15] CY_SECTION(".MY_section")  ;

/----------------------------------------------------------------------------------

3.Then setup customer linker script

Thanks,

LIN

0 Likes