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

9s12xdt256看门狗疑问

9s12xdt256看门狗疑问

9s12xdt256看门狗疑问

请问看门狗中断在FFFA这个地址上,我在PRM文件中加入了看门狗的中断的地址并且在C文件中写了看门狗中断服务程序。

为什么,我把断点设置在中断服务程序的时候为什么不会中断??我发现的现象是,看门狗没有经过中断服务程序,直接重启了!

我在SX二进制代码中也看到在FFFA这个地址上确实定义了我的中断服务例程的地址信息!

难道xdt256的片子和其他51也类似对于看门狗中断是没有中断服务例程的?一旦看门狗到时直接重启??

不知道,S12XEP是要有子程的。

应该是会进入COP中断的。仔细检查一下断点地址是否正确,断点处指令是否被优化?

海纳百川  有容乃大

谢谢上面两位大哥的指点,我仔细查看过代码,并且在S19文件以及调试窗口中都看过,确定在FFFA地址上面就是COP的中断服务程序地址,没有被优化。

void _COP_EntryPoint(void)
{
while(1);
__asm("jmp _EntryPoint"); /* Jump to OnWatchDog */
}

const tIsrFunc _ResetVectorTable[] @0xFFFA = { /* Reset vector table */
/* Reset handler name Address Name Description */
_COP_EntryPoint, /* 0xFFFA ivVcop unused by PE */
_EntryPoint, /* 0xFFFC ivVclkmon unused by PE */
_EntryPoint /* 0xFFFE ivVreset used by PE */
};

确实产生了超时重启,启动COP之后系统显示如下内容

Postload command file correctly executed.
main 0xE089CE'L T
STARTED
RUNNING
Breakpoint
STARTED
RUNNING
Breakpoint
STEPPED OVER
TARGET SELF-RESET DETECTED
RUNNING
TARGET SELF-RESET DETECTED
TARGET SELF-RESET DETECTED
DBG Trigger occurred
TARGET SELF-RESET DETECTED
RUNNING
DBG Trigger occurred
TARGET SELF-RESET DETECTED
RUNNING
DBG Trigger occurred
TARGET SELF-RESET DETECTED
RUNNING
executing .\cmd\TBDML_reset.cmd

一直在重启,但是始终不是从中断服务例程中进入的!!如果进入肯定死在while1上面。现在每次都会自动到起始地址重启。很奇怪

[em01]
我使用了http://bbs.eccn.com/uploadImages/dg128_COP_Reset.rar这个chen工提供过的例子,您可以在中断中加入while1尝试一下,从来都不会断点进入

同样测试了在中断处理中做点灯的程序,并且摆脱BDM跑,仍然不能进入(因为没有任何点灯动作发生)

给点指导阿

帮帮忙阿

给点指导!各位大虾!
我也遇到你的问题了,你搞明白了吗?
首先要保证在不开启COP的情况下程序能正常运行,然后再开启COP。
海纳百川  有容乃大
罗晓娜

S12XDT256 原装正品40元,可以小批量供应,,需要请联系
深圳市金信通电子有限公司
地址:深圳市深圳南中路中航苑鼎诚国际大厦1819室
   电话:0755-82709601 传真:0755-82709323
      网站:www.hkkct.com 邮箱:yw06@hkkct.com
      QQ:727610097
      联系人:罗晓娜  手机:15889639472
www.hkkct.com QQ727610097 XILINX FREESCALE
我遇到的问题是 单片机根本就不复位
返回列表