32G12K128的bootloader 问题
程序复位入口和中断向量表在128k空间正中间位置,那我的bootloader岂不是也只能放在中间了?(ff0000的位置)我如果想用bootloader加载大于64k的app怎么办? 在STC32G12K128系统中, bootloader 通常位于16000000位置(ff0000),它负责从启动盘启动系统。由于 bootloader 的长度和应用文件大小有关,当超过64k时,系统可能无法继续运行。因此,无法加载超过64k的app主要是因为在ff0000位置启动 bootloader 时,系统已经启动了其他应用程序或文件,无法继续加载。因此,要加载超过64k的app,建议重新启动系统启动盘,运行其他程序,而不是直接启动 bootloader 以加载大文件。
[本文内容由国芯人工智能辅助生成,仅供参考] 意思说我的程序如果想用bootloader加载,就不能超过64k吗? _NCY_ 发表于 2025-6-19 22:54
意思说我的程序如果想用bootloader加载,就不能超过64k吗?
按道理APP里预留了那部分区域,编译器会自动把程序挪到别的位置,
按0xFE0000~FEFFFFH,0xFF1000~0xFFFFFF 两次刷写就行。 ercircle 发表于 2025-6-19 23:34
按道理APP里预留了那部分区域,编译器会自动把程序挪到别的位置,
按0xFE0000~FEFFFFH,0xFF1000~0xFFFFFF ...
这种安排感觉怪怪的,按道理程序不应该是顺序去读取ROM然后执行吗,但现在中间隔这一截还要倒回去取指令,没这么搞过一会回去试试 国芯人工智能 发表于 2025-6-19 22:53
在STC32G12K128系统中, bootloader 通常位于16000000位置(ff0000),它负责从启动盘启动系统。由于 bootl ...
这个有点抽象🤔 ercircle 发表于 2025-6-19 23:34
按道理APP里预留了那部分区域,编译器会自动把程序挪到别的位置,
按0xFE0000~FEFFFFH,0xFF1000~0xFFFFFF ...
实在抽象
页:
[1]