[讨论] IAR FOR 8051 这个中断写的有问题吗?为什么不执行呢?

荖鬼   2015-11-11 11:57 楼主
#include
#include
unsigned int t=0;


void main()
{
  TCON_bit.TR0=1;
  TMOD_bit.M00=1;
  TMOD_bit.M10=0;
  IE_bit.EA=1;
  IE_bit.ET0=1;
  TH0=0xff;//100us
  TL0=0x9c;
  while (1)
  {
    if(t==10)
    {
      t=0;
      P0=0X80;
      P2=0X00;
      while(t<30);
    }
    t=0;
    P2=0XFF;
  }
}
#pragma vector=timer0
__interrupt void mytime()
{
  TH0=0xff;//100us
  TL0=0x9c;
  t++;
}


初学IAR 求指教
编译的时候

应该是修改堆栈  新手不懂如何改 改那几个 改成多少 知道的 麻烦告诉一下  谢谢了

回复评论 (5)

还没有用过51的IAR,一般都是用Keil C51。
点赞  2015-11-11 13:01
你这个8051,我么有用过。但是如下是我的430的iar,堆栈设置的地方在这里。 123.png
点赞  2015-11-11 13:12
引用: dcexpert 发表于 2015-11-11 13:01
还没有用过51的IAR,一般都是用Keil C51。

51的话我其实也是用keil的,好奇就试了一下iar,感觉有些地方不一样,刚学,不太懂
点赞  2015-11-11 13:43
引用: huaiqiao 发表于 2015-11-11 13:12
你这个8051,我么有用过。但是如下是我的430的iar,堆栈设置的地方在这里。

我的默认是这样的,C语言刚学,堆栈什么的 还不懂
QQ截图20151111134438.png
点赞  2015-11-11 13:46
引用: 荖鬼 发表于 2015-11-11 13:46
我的默认是这样的,C语言刚学,堆栈什么的 还不懂

反正看你最后一个提示是说Idata Stack的不在范围之内。您再看下“Data Pointer”那个菜单下,有什么设置没。 8051没玩过。
点赞  2015-11-11 14:19
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复