2024-07-02
GR5526 GUI专题(4) - Lvgl字体的位图数组合并转换为bin文件的说明
写技术文章
精选推荐
157***476
1.使用GRToolbox进行OTA时《获取固件信息》这一栏时是程序固定从boot_info(0x100_0000~0x100_1000)读取的img_info吗?还有选择蓝色箭头切换程序运行是直接跳转到img_info对应固件的load_addr吗?
2.我做了这样的一个OTA实验,例程是改的app_tmp_dfu,目的是想实现app双分区升级:
三个一样的程序,仅更改蓝牙名称和run_addr,load_addr
分别为程序a:蓝牙名称:Goodix_tem_DFU 运行地址:0x1040000
分别为程序b:蓝牙名称:Goodix_111_DFU 运行地址:0x1080000
分别为程序c:蓝牙名称:Goodix_333_DFU 运行地址:0x1040000
若:
①a运行,再升级到b,升级显示成功,跳转到b运行,获取固件信息时有程序a,b的信息,升级后广播名称为b
②b运行,再升级到c,升级显示成功,但是没有跳转到c运行,且获取固件信息时只有程序b的信息
若:
①a运行,再升级到b,升级显示成功,跳转到b运行,获取固件信息时有程序a,b的信息,升级后广播名称为b
②b运行,在获取固件信息时有程序a,b的信息,选择a运行
③a运行,升级程序c,拷贝升级,地址为0x1080000,升级显示成功,跳转到c运行,获取固件信息时有程序a,b,c的信息
④c运行,在获取固件信息时选择b运行,程序出错重启会跳到rom保存的ble_dfu程序运行
貌似程序升级只能flash小地址运行程序升级到大地址位置,如0x1040000运行的程序升级覆盖0x1080000是可以成功的,但是0x1080000运行的程序升级覆盖0x1040000是不行的?
如果flash应用程序运行出现无法再OTA的情况(相当于变砖无法升级),是否有方法可以使程序强制跳转到ble_dfu程序进行挽救的?
打开微信,使用“扫一扫”即可关注