永发信息网

单片机 K1-K4 分组控制LED 问题,求助

答案:2  悬赏:0  手机版
解决时间 2021-11-25 13:25
  • 提问者网友:星軌
  • 2021-11-25 07:51
单片机 K1-K4 分组控制LED 问题,求助
最佳答案
  • 五星知识达人网友:几近狂妄
  • 2021-11-25 08:58
Key_State=~t>>4;
就是这一句的作用,从上面可知道,t是P1口状态,也就是按键状态,假如“关闭”按下,对应的是P1.7,则t=0x7f(二进制的0111 1111)
Key_State=~t>>4;首先将t按位取反,变成1000 0000;
再右移4次,变成,0000 1000。
同理,1011 1111变成0000 0100
1101 1111变成0000 0010
1110 1111变成0000 0001
有什么为题么?
这个电路用的是独立按键,没必要这么深奥,t=P1延时10ms,消抖之后直接switch(t)
case 0x7f:
case 0xbf:
case 0xdf:
case 0xef:
case后面是4种处理。追问在写程序的时候,为什么加了Key_State这么一个量,是直接用t不行吗?它的作用是不是类似于寄存器,为了让程序进入while(Key_State!=0){k++;Key_State>>=1;} 这段程序吗?追答uchar k,t,Key_State;
主程序第一句定义了三个字符变量,k,t和Key_State
它就是个辅助变量,是为了程序处理方便,判断按键状态。
你可以按照我说的试试
全部回答
  • 1楼网友:逃夭
  • 2021-11-25 09:28
你这个全部的代码有没
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯