首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

中断服务程序返回后未从断点处继续执行???

中断服务程序返回后未从断点处继续执行???

请教:

中断服务程序返回后未从断点处继续执行???

我的程序是这样的:

main()

{

initial();

while (1)

{

 。。。。。//进入中断服务程序

}

}

当从中断服务程序中跳出后,程序从主程序的initial()开始执行。

什么原因呢?

不可能的,你怎么判断出是从intial开始执行的,代码重起了吧。
在交流中前进,共同实现nios的应用。
我在initial(),中断服务程序,循环体中分别设置断点,全速运行后看到执行中断服务程序后,跳到了initial()的断点处执行。
怎么算代码重起?什么原因会造成这样的后果?
怎么算代码重起?什么原因会造成这样的后果?

引起这个的原因可能比较多,其中我遇到过很多种,像中断,数组定义溢出,数据溢出等,我觉得最多的还是中断,中断向量引起的。你把堆栈设置到专门的存储器中,不和其他的公用看看。

在交流中前进,共同实现nios的应用。

我将heap memory 和stack memory设置到片内,就可以了。原来全部都设置到sdram上的。谢谢,应该就是由于stack的设置引起的。

恩,这个问题是要小心点阿。
在交流中前进,共同实现nios的应用。
返回列表