打印

STR912软件仿真与硬件仿真情况不一样

[复制链接]
2757|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
smartsheep|  楼主 | 2007-9-7 23:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在调试RTC的中断时, 软件仿真时经常去不掉RTC的中断标志位,去读那个寄存器了,但没用,导致程序一直进中断, 把该程序烧录到板子上,它居然跑得很正常。

而调试TIM0中断时,软件仿真一切OK, 下载到板子上硬件仿真就不行了,该开的中断使能都已经开了,可是系统就是不进中断,好像就进了一次,再也进不了了, 一直在OS_TaskIdle()任务函数里。

是MDK的问题还是板子的问题,还是真的是程序的问题?  板子可视embest的demo板啊。
沙发
STF| | 2007-9-10 14:16 | 只看该作者

程序给我们看一看

你好,

你有没有办法给我们看一看这个程序(中断初始化的一部分)

Regards,
Stephane Rainsard

使用特权

评论回复
板凳
smartsheep|  楼主 | 2007-9-10 17:18 | 只看该作者

TIM0中断已经正常了


  RTC_PeriodicIntConfig(RTC_Per_128Hz);
  /* Enable the RTC interrupt */
  VIC_ITCmd(RTC_ITLine, ENABLE);
  /* Configure the RTC interrupt priority */
  VIC_Config(RTC_ITLine, VIC_IRQ, 0);

然后在第一个任务里开启RTC中断使能
RTC_ITConfig(RTC_IT_Per,ENABLE);

这个设置就是前面说的用MDK软件仿真经常去不掉RTC的中断标志位
在中断服务里是
void RTC_IRQHandler(void)
{
  if(RTC_GetFlagStatus(RTC_FLAG_Per))
    OSTimeTick();
}
照理来说执行if(RTC_GetFlagStatus(RTC_FLAG_Per))后,中断控制器中的RTC相应RawInt标志应该变为0,可这个标志经常不变,RTC的中断标志已经变了。
这个情况可能是MDK的问题。

TIM0中断的问题现在已经正常了,我也不知道怎么变正常的,真是见鬼了。

STR的资料读起来太累了。

使用特权

评论回复
地板
yxf781026| | 2008-1-14 10:44 | 只看该作者

能给我发一个TIM中断的工程吗

能给我发一个有TIM中断的工程吗?,我的程序始终进不了中断。MDK在添加Linense之前是可以进中断的,添加了licnese之后就不可以了。
请发到我的邮箱yingxf@eastcom.com 谢谢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

57

帖子

0

粉丝