标题: 51单片机Proteus仿真两个按键控制一个数码管 不太理解怎么弄这种效果 [打印本页]

作者: 在学习    时间: 2022-3-23 21:10
标题: 51单片机Proteus仿真两个按键控制一个数码管 不太理解怎么弄这种效果
要求:两个按键控制一个数码管,按下一个显示一个对应数字,按下另一个按键显示另一个数字。一个按键对应一个数值,且正常情况下保持不变。今天做了好久,只能弄出来,一个按键加一,一个按键减一。无法保持固定值,新手刚学,不太理解怎么弄这种效果
作者: lkc8210    时间: 2022-3-23 23:57
  1. sbit Key_A = P3^2;
  2. sbit Key_B = P3^3;

  3. void main()
  4. {
  5.         while(1)
  6.         {
  7.                 if(!Key_A)
  8.                 {
  9.                         P0 = 0x6D;//共陰5
  10.                 }
  11.                 if(!Key_B)
  12.                 {
  13.                         P0 = 0x7F;//共陰8
  14.                 }
  15.         }
  16. }
复制代码


作者: cnos    时间: 2022-3-24 00:00
加一减一都弄出来了这个简单的反而不会了……
如果 按键1 按下 输出 x 的字形码。
如果 按键2 按下 输出 y 的字形码。

if(按键1被按下)
{
P1=段码数组[x];
}
if(按键2被按下)
{
P1=段码数组[y];
}
作者: 在学习    时间: 2022-3-24 13:20
cnos 发表于 2022-3-24 00:00
加一减一都弄出来了这个简单的反而不会了……
如果 按键1 按下 输出 x 的字形码。
如果 按键2 按下 输出  ...

我就是那样改的,但是就是实现不了,最后弄出来了谢谢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1