|
本帖最后由 ptz19861212 于 2012-6-13 07:52 编辑
小弟前几天用IAR写了一个430的小程序,结果每隔1S就会复位,一开始以为是看门狗,结果关了也不行,然后使劲查错,最后接上FET仿真器,才最后发现问题,IAR居然把数组的个数给编译少了!!!我定义了两个数组,一个是gAdcIn[ADC_CONFIG_CHANNELS_NUMBER][ADC_CONFIG_DATA_NUMBER], 一个是gAdcOut[ADC_CONFIG_CHANNELS_NUMBER], 我预定义的是ADC_CONFIG_CHANNELS_NUMBER 为 3,结果IAR把我的gAdcOut定义成只有1个,然后在原本应该是gAdcOut[1]的位置刚好又是我存放函数指针的地方,结果程序就跑飞,复位了。而且我明确定义gAdcOut[3], 最后生成的还是只有1个元素的数组.
哪位大哥知道原因的,麻烦救下小弟啊。。。
预定义数组 看右下脚
直接定义的数组 看右下角
编辑原因:添加了一个图 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
该献的血还是要献的。你不献他不献。难道让我去献? --- 出自坛友:lovejp1981
|