标题: 单片机中断EA不能取反吗? [打印本页]

作者: 702724152    时间: 2023-8-2 17:30
标题: 单片机中断EA不能取反吗?
   程序按键K3只能开启总中断不能关闭中断,是什么原因。

  if(k3 == 0)
   Delay1ms(10);
      if(k3 == 0)
    EA=!EA;
     while(k3==0);

重编辑以下这样配置,按键能控制定时器0.2开和关闭定时器吗?
void main()
{
         if(k3 == 0)  //按键K3
{   Delay1ms(10);
         if(k3 == 0)
{    EA=!EA;
          while(k3==0);
TMOD &= 0x01;   //定时器0
TH0 = 0xFC;
TL0 = 0x67;
ET0 = 1;
Timer2_Init();        //STC定时器2配置
while(1)
{
  keyscan();      //其他功能按键配置

}
}
} }



作者: devcang    时间: 2023-8-2 22:37
没整体代码,不知道情况如何,,,也可以使用bit变量辅助完成的。。。。在中断中,要尽量少占用cpu时间,如不要使用延时。
作者: wulin    时间: 2023-8-3 07:47
中断寄存器IE支持位操作。写EA=!EA;没有问题,达不到预期目的是其它代码问题所致。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1