单片机入门:数码管滚动显示

2022-07-21 15:50:42 浏览数 (1)

数码管从左到右依次滚动显示0~7,程序通过每次仅循环选通一只数码管!

仿真图如图所示:

程序如下:

代码语言:javascript复制
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int

uchar code DSY_CODE[]=
{
   0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90
};

void DelayMS(uint x)
{
   uchar i;
  while(x--)
  {
     for(i=200;i>0;i--);
  }
}

void main()
{
   uchar i,k=0x80;
  while(1)
  {
     for(i=8;i>0;i--)
    {
       P2=0xff;
      k=_crol_(k,1);
      P0=DSY_CODE[8-i];
      P2=k;
      DelayMS(3);
    }
  }
}

为验证仿真效果,本设计在protues8.7软件上验证实现。

仿真视频如下:

http://mpvideo.qpic.cn/0bf234gb4aamgmadusehj5pvzx6dd3pqyhqa.f10002.mp4?

0 人点赞