发 帖  
原厂入驻New
[问答]

程序循环问题,按键不起作用,各位大侠指导下谢谢!

848
分享
#include<reg51.h>
#include<intrins.h>
#define GPIO_LED P2
sbit k3=P3^3;
sbit k4=P3^4;
void IntConfiguoration();
void delay(unsigned int n);
unsigned char keyvalus;
void main()
{
GPIO_LED=0x01;
IntConfiguoration();
while(1)
  {
           if(keyvalus)
         GPIO_LED=_crol_(GPIO_LED,1);
         else
         GPIO_LED=_cror_(GPIO_LED,1);
         delay(2000);
  }
}
void IntConfiguoration()
{
  IT0=1;
  EX0=1;
  IT1=1;
  EX1=1;
  EA=1;
}
void delay(unsigned int n)
{unsigned char a,b;
  for(;n>0;n--)
  {for(b=1;b>0;b--)
   for(a=22;a>0;a--);
  }
}
void Int0() interrupt 0
{
  delay(1);
  if(k3==0)
  keyvalus=1;
}
void Int1()        interrupt 1
{
  delay(1);
  if(k4==0)
  keyvalus=0;
}
实验效果是要K3按下LED左循环,K4按下LED变右循环.
但是一直右循环,K3,K4中断不起作用?


0
2014-6-29 10:31:32   评论 分享淘帖 邀请回答
2个回答
外部中断0和1对应的中断入口号为0和2。1和3对应的是定时器0和1。
2014-7-2 16:07:14 评论

举报

哦谢谢大侠帮忙,学到了!
2014-7-2 20:25:25 评论

举报

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表