file1.c

来自「单片机学习系统附的实验源代码」· C语言 代码 · 共 41 行

C
41
字号
//led显示程序,简单地显示led的程序
//展示了如何控制端口的方法
//现象 : led 8个灯从左到右,然后从右到左显示;

#include <reg52.h>

void delay(unsigned char times);

void main()
{
    int k,m;
    P0 = 0;            //关闭数码显示
    P2 = 0;
   
  while(1)             //设置一个无限制循环
 {   m = 254;
    P1 = m;          //从第一个灯开始显示
    for(k=0;k<8;k++)
    {delay(255);
       m <<=1;
      P1  = m;        //表示,P1每次向左一位
    }
    m = 128;
    for(k=0;k<8;k++)   //第二次重复
    {delay(255);
      m >>= 1;
      P1 = m;        //表示,P1每次向右一位
    }	
  }
}
//下面是延时程序。具体的延时时间不能通过表面程序看出,(为什么?)
//如果我们需要一个精密的延时程序,那么我们可以采用内嵌汇编代码的方式
//
void delay(unsigned char times)
{
    int t=12000;           //延时倍数
    unsigned char i=times;   
    for(;i!=0;i--)
    {for(;t!=0;t--){}}
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?