嵌入式学习(51,32)
May 03. 2026

AI文摘
此内容由AI根据文章内容自动生成.
加载中。

51单片机

流水灯原理:

  • 通过PCB原理图可以知道控制LED灯亮灭的是P2口的,并且接入+VCC5V即高电平1,LED灯要那个亮的话那个线,P2端要设置为0,不亮就设置为1,有电势差,即有电流流过灯亮;
#include <REGX52.H>
#include <INTRINS.H>

void Delay500ms()//@12.000MHz
{
  unsigned char i, j, k;

 _nop_();
 i = 4;
 j = 205;
 k = 187;
 do
 {
  do
    {
      while (--k);
   } while (--j);
 } while (--i);
}

void main()
{
  while(1)
  {
    P2 = 0xFE; // 1111 1110
    Delay500ms();
    P2 = 0xFD; // 1111 1101
    Delay500ms();
    P2 = 0xFB; // 1111 1011
    Delay500ms();
    P2 = 0xF7; // 1111 0111
    Delay500ms();
    P2 = 0xEF; // 1110 1111
    Delay500ms();
    P2 = 0xDF; // 1101 1111
    Delay500ms();
    P2 = 0xBF; // 1011 1111
    Delay500ms();
    P2 = 0x7F; // 0111 1111
    Delay500ms();
  }
}
void main()
{
  int i;
  while(1)
  {
    for(i = 0; i < 8; i++)
    {
      P2 = ~(1 << i);
      Delay500ms();
    }
  }
}
端口特点能不能直接点LED
P0无上拉(最特殊)❌(要加电阻)
P1普通IO
P2普通 + 地址
P3多功能口✔(但要小心占用功能)
> comment on / twitter
>
CC BY-NC-SA 4.0 2021-PRESENT © RYANUO