打印

怎么处理这里的按键程序啊!

[复制链接]
1596|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
DRH|  楼主 | 2008-12-13 11:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是一个时钟的按键程序
void key()
{
  uchar x,y;
  if(key1==0)
   {
     delay(10);
     if(key1==0)
       {
         TR0=0;
         sdg++;
         while(key1!=1);//因为我数码管是扫描的,当按键一直按下的时候,这时候数码管就不亮了,我应该怎么处理这一点啊
          if(sdg==24)
          {
           sdg=0;
          }
          shi=sdg%10; //时低位分离
          shig=sdg/10; //时高位分离
          TR0=1;
        }
    }
}

相关帖子

沙发
ayb_ice| | 2008-12-13 11:42 | 只看该作者

LZ要有多任务的概念才行

while(key1!=1);//这句话很坏事,严重影响其它任务,如果永远key1!=1怎么办,转换一下思路,记录一下当前状态,轮询处理任务,这样可以释放CPU给其它任务,从而实现多任务。。。

使用特权

评论回复
板凳
DRH|  楼主 | 2008-12-13 12:06 | 只看该作者

哦,谢谢了

使用特权

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

本版积分规则

DRH

6

主题

10

帖子

0

粉丝