请教F2812的FLASH下载问题

paulguo   2009-7-2 05:56 楼主
第一次向2812的FLASH内下载程序是成功的,且程序也能够执行;第二天擦除后,在下载就不行了,报告:
Flash API Error #31:
There was a Aero Bit Error on the Program Operation.
First Fail Address=0x003D7801
在开发板上和其他产品的板子上下载成功,两相对比只是擦除时间有些区别,不能下载的时间短些;每次擦除也报过成功,难道这擦除成功是假的?大家有人碰到过吗?谢谢!
虽然不能下载,但是在RAM调试还是没有问题的。

回复评论 (6)

刚才下载了开发板提供的例程,是没有问题的;我把我的工程中main函数所在的文件内调用其它文件内函数的语句屏蔽掉,居然下载成功,并且反复都是成功的,只要开放一个就不行,这是怎么回事呢?为什么main函数所在文件内不能调用其它文件内的函数?我越来越迷茫了,请各位有经验的朋友指点,谢谢!
点赞  2009-7-3 03:28
经过进一步验证,在任何一个文件内都不能调用文件外的函数,是不是链接设置有问题啊?我的工程师拷贝的开发板例程,在此基础上修改,没有做任何设置。
点赞  2009-7-3 04:30
检查下程序运行需要的空间,可能是运行过程中需要的空间不够。
点赞  2009-7-3 09:11
在开发板例程的基础上,我用主函数所在文件的内容替代原来的文件内容(不是文件替代),把INT1、TIMER0、SCIA、SCIB、SPI、ADC、EVB等资源的初始化和中断及相应的应用程序加入例程,下载都是没有问题的;当加入一个含有switch语句并且case比较多的文件就不行了,如果把case减少到10个就可以通过,奇怪吧?
如果说在任何一个系统上都不行,那也可以说我的软件有问题,可是同一个工程在开发板上、其它产品的板子上、一个网友的板子上都没有问题,偏偏在我的板子上就有这样的奇怪的现象。
点赞  2009-7-3 09:21
如果编译选择优化等级o2,o3,会不会有变化?
点赞  2009-7-6 05:53
不会啊
点赞  2009-7-9 07:07
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复