永发信息网

单片机怎么实现用KEY 1控制数码管上显示的数字加1 KEY2控制数码管上显示数字减1?

答案:3  悬赏:20  手机版
解决时间 2021-06-06 06:35
  • 提问者网友:疯子也有疯子的情调
  • 2021-06-05 15:15

KEY 1连P1.0 KEY 2连 P1.1 ABCDEFG DP 连P2.0-P2.7 1、2连P1.6 P1.7

谢哦~

最佳答案
  • 五星知识达人网友:大漠
  • 2021-06-05 16:02

#include <reg52.H> 头文件


#define unchar unsigned char 宏定义


unchar code tatel[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f}; 编码


unchar num;


sbit key1=P1^0; p2^0为加


sbit key2=P1^1; p2^1为减


void delay(unchar z) 延时子函数


{


unchar i,j;


for(i=z;i>0;i--)


for(j=100;j>0;j--)


}


void keyscan() 按键子函数


{


if(!key1)


{


delay(5); 去抖


if(!key1)


num++;


}


if(!key2)


{


delay(5); 去抖


if(!key2)


num--;


}


}


void display() 显示子函数


{


P2=tatel[num];


}


void main() 主函数


{


while(1) 大循环


{


keyscan();


display();


}



}




P1口接8位数码管


P2.0接加按键


P2.1接减按键

全部回答
  • 1楼网友:上分大魔王
  • 2021-06-05 17:04
程序方面的大概思路是如果P1.0,P1.1分别接受到低电平,对应的变量加1或减1,硬件方面很简单,只要把按键的一头连低,一头接你要求的引脚就可以啦,程序方面的只要把对应的数字显示出来就可以啦,这些里程网上应该很多,你只是需要巴黎城里面显示的数字改成变量,变量付个初值就可以啦。
  • 2楼网友:你哪知我潦倒为你
  • 2021-06-05 16:45

用汇编还是C语言啊?最好能上传个电路上来。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯