求助!目前在做stm8s的bootload,用uart接收数据,写入flash。目前进度是,uart接收到数据,并写入flash,写入的地址是0x009000。能用stvp读到0x009000地址有数据,说明已经写入进去了。问题是我从iap跳转到app地址0x009000后,跑飞了,是用stlink硬件仿真的。跳到0x009080也跑飞了!想问问各位,这个app的icf文件应该怎么设置?app的函数应该怎么写?
跳转到app程序的地址应该是0x009000还是0x009080?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
我现在遇到的问题是,按照论坛大神们的经验,从iap转到app,地址应该是0x9080,因为我的app的起始地址是0x9000。但是,如果这样设置的话,因为这个地址可能是子程序中某一语句的地址,而主函数的入口在后面,所以当我执行到此子程序结束,会有跳转语句回到主程序,但是app的main函数未执行,所以就会跑飞了。所以请教大神,是iap还是app有问题?
一周热门 更多>