【求问】IAR for AVR编译的程序,函数能嵌套几层?

baoyz 2019-02-28 03:27:49
最近调试程序发现函数嵌套后,烧录代码会出现严重的错误(eeprom不能正确烧录)。但是找不到问题的根本,猜测与函数的嵌套有关,问题如题。
程序结构如下,没有交叉循环的嵌套。


int main()
{
Fa();
}

void Fa()
{
Fb();
}

void Fb()
{
...
}

这样嵌套就出错,如果把Fa直接写进main()中,就没有问题。
...全文
189 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
baoyz 2019-03-01
  • 打赏
  • 举报
回复
Fa、Fb里面就一个int变量,循环用的。循环10、20次。
然油宝 2019-02-28
  • 打赏
  • 举报
回复
函数的嵌套层数是由堆栈大小决定的,看看你的零时变量是不是定义太大了。或者把堆栈空间改大。
yishumei 2019-02-28
  • 打赏
  • 举报
回复
楼主,我没有用过IAR,只能提供一个参考:这是不是程序优化的问题。愿你尽快能找到并解决问题。

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧