CH573 OTA 升级 问题

1. 我用的CH573,App应用在没有增加OTA的时候,已经达到270K左右,超过216K(包含静态链接的Lib)。

请问:按照文档说明,已经不能采用方式一来做OTA升级了,对吗? 

image.png


2. 采用方式二升级,官方的OnlyUpdateApp_Peripheral示例程序限定在了44K

image.png请问:270K 的应用,采用方式二 进行OTA升级,要如何配置呢? 


3. 如下的布局是可行? 把App放在Lib之后,也就是192K的位置。 

   会不会影响到 DataFlash 和 InfoFlash ? 这两个区域是映射在什么地址的?

    另外,这样一来,中间那个44K 的Flash区域是不是就浪费了? 


image.png

你可以这么去操作,将app区域从44k扩大,具体怎么修改可以参考下面链接,然后下载最新的573例程,里面有个固定库靠后放的,

emobile_2022-05-12_09-54-25.png

https://www.cnblogs.com/debugdabiaoge/p/15980999.html


非常感谢!最新的是V1.8的EVT, 里边CH57xBLE_ROMx.hex文件是从 0x50000(320K) 开始的,长度也是128K吧?这样刚好顶在448K的上限。?

请问: 这个JumpIAP 是做什么用的? 是给BootLoader判断用的一个标志吗???

按照文档上这么修改,相当于去掉了这个标志,直接跳转到IAP程序了,对吗??

2693864-20220308155856831-1669999132.png


2693864-20220308155936655-846179198.png


是的,将协议栈放在了codeflash最后的位置,

JumpIAP顾名思义就是跳转到IAP,以防升级中断电出现无法再进入IAP,上面文档只是讲述如何分配空间,结构上是没有变化的,依旧是JumpIAP+APP+IAP+LIB.


好的。 DataFalsh区与InfoFlash区域,在什么位置呢?  与CodeFlash区域不重叠吧? 代码里面好像没有看到。 

image.png


image.png

CH582的在这个位置

image.png


.


j_0009.gif没仔细看手册。 这样就拼完整了。 

image.png


最新V1.8的EVT,按照上边的布局方式,用CH57xBLE_ROMx.hex 这个固定库。 运行不起来(开机没有反应,按一下boot键,进入boot模式。按reset键没有反应。)

用EVT默认的44K方式,可以正常运行。

这样怎么排查呢??


合并.png

image.png

image.png


这里好像不太对, 要怎么修改呢? 

地址.png


首先,根据链接去修改,确保没有遗漏的需要修改的地方,另外将库后移,启动文件中是否也做出来相应的修改:

(IAP和APP的启动文件)

emobile_2022-05-13_11-40-43.png


OK 了。 就是这个地方没有修改。 没有文档提到这个地方。 j_0009.gif


启动文件.s  和 连接文件Link.ld   这两个文件很重要,有文档之类的解释这两个文件,或者指导如何修改这两个文件的吗? 


App 的启动文件,这一行默认是88, 需要修改成188吗? 代表什么含义? 

VeryCapture_20220513123410.jpg


这个不需要改的,0x88和0x1888的区别是用户模式和机器模式。这两个不是公共的启动文件,所以不同,我这边截图是IAP的,你的是APP的。


好的。学习了。j_0010.gif


请问有CH582的固定库靠后放的hex文件吗?CH582是否也可以通过你们上述实现?


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