【单片机期中测试】2.独立按键控制LED移位

简介: 【单片机期中测试】2.独立按键控制LED移位
#include<reg52.h>
#define uc unsigned char
sbit KEY1 = P3^1;
sbit KEY2 = P3^0;
void delay(uc c)
{
  uc a,b;
  for(;c>0;c--)
    for(a=38;a>0;a--)
      for(b=130;b>0;b--);
}
void main()
{
  uc LEDNum = 0;
  P2 = 0xFE;
  while(1)
  {
    if(KEY1 == 0)
    {
      delay(1);
      while(KEY1 == 0);
      delay(1);
      if(LEDNum >= 7) LEDNum = 0;   
      else
        LEDNum++;
      P2=~(0x01<<LEDNum); 
    }
    if(KEY2 == 0)
    {
      delay(1);
      while(KEY2 == 0);
      delay(1);
      if(LEDNum <= 0) LEDNum = 7;
      else
        LEDNum--;
      P2=~(0x01<<LEDNum);
    }
  }
}
  • 接线:
  • P2接LED模块(注意正反)
  • key1接P3^1
  • key2接P3^0
相关文章
|
2月前
4-2 51单片机点亮LED
4-2 51单片机点亮LED
33 2
【51单片机】Kn独立按键控制【LED亮灭】【LED状态】【LED二进制式显示】【LED不断移位】(4)
【51单片机】Kn独立按键控制【LED亮灭】【LED状态】【LED二进制式显示】【LED不断移位】(4)
|
2月前
|
编译器 C语言 C++
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”
|
2月前
|
C语言
独立按键控制LED亮灭、独立按键控制LED状态、独立按键控制LED显示二进制、独立按键控制LED移位——“51单片机”
独立按键控制LED亮灭、独立按键控制LED状态、独立按键控制LED显示二进制、独立按键控制LED移位——“51单片机”
|
2月前
|
C语言
点亮一个LED+LED闪烁+LED流水灯——“51单片机”
点亮一个LED+LED闪烁+LED流水灯——“51单片机”
|
2月前
|
编译器 C语言 开发者
单片机原理与应用:探索微型计算机世界
单片机原理与应用:探索微型计算机世界
33 1
|
2月前
|
数据采集 数据处理 C语言
单片机:探索其原理、应用与编程实践
单片机:探索其原理、应用与编程实践
39 1
|
2月前
|
物联网
STC51单片机-实验开发装置仿真-物联网应用系统设计
STC51单片机-实验开发装置仿真-物联网应用系统设计
85 0
|
2月前
|
物联网
STC51单片机-控制LED闪亮的仿真-物联网应用系统设计
STC51单片机-控制LED闪亮的仿真-物联网应用系统设计
58 0