各路英雄帮忙一下小弟,谢谢!

2019-08-19 19:59发布

test.c(29): error:  #29: expected an expression困惑!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
gongyinhe
1楼-- · 2019-08-19 22:32
stm32wwxf 发表于 2017-5-4 16:40
去看看switch和case的用法应该就能解决了。错误是表达式错误,

这个问题我解决了在key.h的头文件时我定义了
#define KEY0_PRES   1  //KEY0按下
#define KEY1_PRES   2  //KEY1按下
#define WKUP_PRES   3  //KEY_UP按下
这个1、2、3忘写了导致在主函数执行的时候找不到
在按键扫描函数时
u8 KEY_Scan(u8 mode)
{
   static u8 key_up=1;                //按键松开标志位
   if (mode)key_up=1;                //支持连接
   if(key_up&&(KEY0==0||KEY1==0||WK_UP==1))
   {
       delay_ms(10);    //去抖动
           key_up=0;
           if(KEY0==0)  return 1;
           else if(KEY1==0)return 2;
           else if(WK_UP==1)return 3;
   
   }
   else if(KEY0==1&&KEY1==1&&WK_UP==0)
           key_up=1;
   return 0;   //无按键按下
   
   }
无法返回1,2, 3
谢谢stm32wwxf君!!!
stm32wwxf
2楼-- · 2019-08-20 01:42
本帖最后由 stm32wwxf 于 2017-5-4 16:42 编辑

去看看switch和case的用法应该就能解决了。错误是表达式错误,
gongyinhe
3楼-- · 2019-08-20 05:12
stm32wwxf 发表于 2017-5-4 16:40
去看看switch和case的用法应该就能解决了。错误是表达式错误,

以后有问题可以多想你请教吗
最近在学习STM32F103ZE的寄存器版本
stm32wwxf
4楼-- · 2019-08-20 07:07
gongyinhe 发表于 2017-5-4 19:02
以后有问题可以多想你请教吗
最近在学习STM32F103ZE的寄存器版本

我也是比较小白,共同进步吧。不过一般stm32学库函数版本就可以啦。寄存器稍微知道了解就行了,因为不包含的寄存器太多了

一周热门 更多>