单片机独立键盘按键系列代码问题

2019-07-15 13:49发布

如以下代码,我想通过按下k1键来让数码管从数字2进行自增
但是无法实现,求大神解答问题出在哪里?
#include<reg52.h>
               
sbit key1=P2^0;
//sbit key2=P2^1;

char table1[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void main()
{


  if(key1==0)
  {
  P0=~table1[2]++;
  }

}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
电小龙
1楼-- · 2019-07-15 15:43
这肯定不对了啊,你自增的是数组的序号
电小龙
2楼-- · 2019-07-15 17:47
Table[2 ++]
djmac
3楼-- · 2019-07-15 21:08
电小龙 发表于 2016-5-28 11:19
Table[2 ++]

LESSON.C(14): error C187: not an lvalue
出现了这个问题 按照你的改过之后
贺文武
4楼-- · 2019-07-16 03:02
  1. for(i=0;i<16;i++;)
  2. {
  3. P0=0;
  4.   if(key1==0)
  5.     {
  6.        i=0;
  7.        P0=table[i];
  8.         i++;
  9.     }
复制代码
}
天涯何处
5楼-- · 2019-07-16 03:26
 精彩回答 2  元偷偷看……
djmac
6楼-- · 2019-07-16 08:36
天涯何处 发表于 2016-5-28 16:01
楼上正解,还有你的按键扫描都不带去抖的吗?这样你的信号太容易误触发了,你按一下没准会跑好几圈。。。。。

消抖是么 一直不太明白消抖是用来干什么的

一周热门 更多>