zzxueyan-310080 发表于 2016-7-27 08:23:29

STM32f407 IAP

我用STM32F407做U盘IAP,为什么有的APP程序跳转后可以运行,有的就不能运行,我的APP程序都单独引导执行是没有问题的。请教一下是什么原因引起的呢?

yklstudent-1794 发表于 2016-7-27 13:37:06

自己分析有问题的HEX和无问题的HEX是否有区别

zzxueyan-310080 发表于 2016-7-27 17:23:55

yklstudent-1794 发表于 2016-7-27 13:37
自己分析有问题的HEX和无问题的HEX是否有区别

从flash里读出来的bin文件和写入的bin文件做过对比,完全一样的

zzxueyan-310080 发表于 2016-8-2 08:44:26

自己顶一下

发表于 2016-8-2 10:47:03

可能FLASH烧写不完整,用工具把FLASH数据读取出来,对比要烧写的内容,是否完整。

zzxueyan-310080 发表于 2016-8-4 11:37:13

安 发表于 2016-8-2 10:47
可能FLASH烧写不完整,用工具把FLASH数据读取出来,对比要烧写的内容,是否完整。 ...

把FLASH里的数据读取过,和写入代码做过对比,完全一样的,后来发现不能执行的程序都是带有UCOS操作系统的程序,这些程序有个共同点,就是任务创建完成后有一个删除空闲任务的操作。把这句屏蔽掉,就能够执行了。还在找原因中。

发表于 2016-8-5 13:36:57

楼主看一下,删除任务后,会进入哪个错误?是不是进入了错误中断?

zzxueyan-310080 发表于 2016-8-5 16:38:27

安 发表于 2016-8-5 13:36
楼主看一下,删除任务后,会进入哪个错误?是不是进入了错误中断?

是的,每次都进入hartfault,通过在fault中断中添加返回操作,好像是返回了操作系统的任务延时中

发表于 2016-8-8 11:31:58

楼主还是看一下任务的删除操作吧。用排除法,看看是哪个任务删除时容易导致这个错误。
页: [1]
查看完整版本: STM32f407 IAP