CH565使用中的几个问题

请教以下问题:


1.mounriver中执行flash download ,发现eeprom_write写入的参数内容也会被擦除,有什么办法能避免dowmload擦除?eeprom的内容?


2.编译生成的hex文件包含了未初始化的数据,所以文件比较大,我的程序中有一个比较大的图像缓冲区,如下定义:


__attribute__ ((aligned(16))) UINT8  image_buff[36*1280*2] __attribute__((section(".DMADATA")));    //数据发送/接收缓冲区


编译结果:

Memory region         Used Size  Region Size  %age Used
           FLASH:      115440 B       448 KB     25.16%
             RAM:        2352 B        16 KB     14.36%
            RAMX:       94464 B        96 KB     96.09%
   text   data    bss    dec    hexfilename
  20752  94688   2128 117568  1cb40USB0135.elf

  有什么措施能避免.DMADATA这样的未初始化数据被包含在hex中?


3.实现自己定义的IAP,个人理解ch565的程序是被复制到ram中执行的吧?所以codeflash的全部内容是否可以直接擦除,覆写?


4.IAP更新codeflash中的程序后,执行PFIC_SystemReset();发现这个时候固件程序依然是旧的版本,必须要重新插拔电源后,新版本程序才会加载,PFIC_SystemReset();软件复位的效果和上电复位不一样,要如何达到上电复位的效果?


1、使用WCHISPTool进行烧录,烧录时不勾选“清除DATAFLASH”

2、可以看下面TEXT的数值,这个是代码大小

3、IAP实现可以参考链接中示例:https://www.wch.cn/bbs/thread-65025-1.html

4、使用CH56x_sys.c中的SYS_ResetExecute()函数执行复位。


只有登录才能回复,可以选择微信账号登录