[求助] 我总是认为串口和独立按键有冲突

cheatsl   2013-10-27 11:31 楼主
我设计了一块板子,有8只LED,三个按钮,一个串口,目的是按钮和串口结合,使LED亮,
LED1=P0^0,
LED2=P0^1,
LED3=P0^2,
LED4=P0^3,
LED5=P0^4,
LED6=P0^5,
LED7=P0^6,
LED8=P0^8,
K4=P1^4,
K5=P1^5,
K6=P1^6,
主程序如下:
main()
{
    uart();                          //串口初始化
  LED1=LED2=LED3=LED4=K5;
   LED5=K6;

   if(uartacept()==0x22)           //串口接收0x22
  {
      if(K4==0)
      {   
         delay1ms(15);                //延时15ms
         if(K4==0)
         {
             LED6=LED7=LED8=0;
         }while(!K4);
      }
     else
    {
    LED1=0;
    delay1ms(500);
   LED1=1;
   LED2=0;
    delay1ms(500);
  LED2=1;
  LED3=0;
    delay1ms(500);
  LED3=1;
    }
}
}

程序运行无误,但是按按钮没有现象。只有串口收到0x22才会使LED1,LED2,LED3闪亮。按钮无反应。
如果不运行串口部分,则按K5,LED1,LED2,LED3,LED4亮。按K6,LED5亮。如果只运行部分,则也是只有串口收到0x22才会使LED1,LED2,LED3闪亮。按钮无反应。
为什么?用的是AT89S52.

回复评论 (4)

串口用中断接收啊
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙 =================================== 做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
点赞  2013-10-27 12:29
没反应是没检测到,因为程序在运行其他的,没运行到检测的那段程序,如果用IO中断检测的话你就知道游泳了
点赞  2013-10-27 15:21

回复 板凳youluo 的帖子

谢谢,我试试
点赞  2013-10-28 21:51
表示 正在学习!
Lunar12
点赞  2014-4-21 20:45
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复