单片机/MCU论坛
直播中

刘继牛

8年用户 1056经验值
私信 关注

求助,关于PSOC4模拟EEPROM的checksum问题求解

咨询个问题,当我们用PSOC4的Em_EEPROM组件时,工程生成的Hex1文件的checksum是不包含了EEPROM的部分吧(通过Custom Linker Script调用cm0gcc.ld)。如果用户没有通过Custom Linker Script调用cm0gcc.ld,这样是不是会调用默认的cm0plusgcc.ld,从而导致生生成的Hex2文件的checksum是包含了EEPROM的部分,这样的话当芯片烧录了Hex2后运行,通过PSoC Programmer去读取芯片的checksum会是变化的吗?谢谢。

[1]main.c中的内容如下:
const uint8_t Em_EEPROM_em_EepromStorage[Em_EEPROM_PHYSICAL_SIZE]
CY_SECtiON(".my_emulated_eeprom") __ALIGNED(CY_FLASH_SIZEOF_ROW) = {0u};
[2]cm0gcc.ld中的有如下内容:
/***************************************************************************
* Checksum Exclude Section for non-bootloadable projects. See below.
***************************************************************************/
.cy_checksum_exclude : { KEEP(*(.cy_checksum_exclude)) } >rom
EM_EEPROM_START_ADDRESS = 0x2000;
.my_emulated_eeprom EM_EEPROM_START_ADDRESS :
{
KEEP(*(.my_emulated_eeprom))
} >rom
[3]cm0plusgcc.ld中的有如下内容:
/***************************************************************************
* Checksum Exclude Section for non-bootloadable projects. See below.
***************************************************************************/
.cy_checksum_exclude : { KEEP(*(.cy_checksum_exclude)) } >rom
.ramvectors (NOLOAD) : ALIGN(8)
{
__cy_region_start_ram = .;
KEEP(*(.ramvectors))
}


                                                                                                                                                                                                        

回帖(1)

闫颖慧

2024-2-3 16:56:23
可以用默认的flash的。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分