打印

单片机C语言程序的一点小问题

[复制链接]
1811|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lvqingfei|  楼主 | 2008-7-26 15:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问各位大虾,我这么一段程序,里面的if语句使用的是否有问题。通过仿真软件执行代码,紧跟着if后面的语句不能执行,例如up()。这个之前都有定义的。我利用if语句也就想用来延时扫描按键。
void key(void)
{
  char kvalue;
      kvalue=P0;
  switch(kvalue)
  {
       case 0xfe:                /***key1=the pule number add 1****/
            delay(20);
            if (kvalue==0xfe)up();
             break;
       case 0xfd:                /**key2= the puls number reduce 1**/
            delay(20);
            if(kvalue==0xfd)down();
             break;
       case 0xfb:
            delay(20);
            if(kvalue==0xfb)
              p20=1 ;
             break;
       case 0xf7:
            delay(20);
            if(kvalue==0xf7)
              p20=0;
            break;
       case 0xef:
            delay(20);
            if(kvalue==0xef)
               send();
             break;
       case 0xdf:
            delay(20);
            if(kvalue==0xdf)
               back();
             break;
            default: break;
  }

}
////////

相关帖子

沙发
computer00| | 2008-7-26 15:41 | 只看该作者

不会不执行的,自己再仔细看看吧。

使用特权

评论回复
板凳
jimoom| | 2008-7-26 16:25 | 只看该作者

加大括号

使用特权

评论回复
地板
btiger2000| | 2008-7-26 18:12 | 只看该作者

延时好像没啥意义啊

使用特权

评论回复
5
农民讲习所| | 2008-7-26 18:22 | 只看该作者

你想要提高水平的话

不要使用delay

使用特权

评论回复
6
utopia779| | 2008-7-26 21:31 | 只看该作者

嗯?

我试了试!
能运行啊!就是没有仿真结果

使用特权

评论回复
7
grady1125| | 2008-7-27 01:53 | 只看该作者

keyvalue的值本身就是case了

if还有什么用?
用if(keyvalue==P0)还有点意思

使用特权

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

本版积分规则

1

主题

3

帖子

0

粉丝