基于51单片机心形流水灯跑马灯设计(Proteus仿真+Keil源码+设计文档+原理图等)附下载链接!

提供对应的Proteus仿真电路图,Keil程序源码(C语言),原理图,模块资料、元件清单、程序流程图等电子资料参考学习,文末附全部资料的下载链接

01设计要求

设计一个基于51单片机心形流水灯跑马灯设计:

功能:通过控制单片机管脚电平的高低变化,来实现发光二极管的亮灭。

02系统概述

采用51单片机做为主控制器,32位流水灯花样自动变换,循环往复。

03Proteus仿真

04示例代码

#include<reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
​
//软件延时函数
void delay(uint k)    
{   
    uint i,j;
    for(i=k;i>0;i--)
        for(j=100;j>0;j--);
}
​
void main()
{   
    uchar temp0,temp1;
    uint i;
    //全端口LED全部点亮
    P0=P1=P2=P3=0x00;
    delay(500);
    P0=P1=P2=P3=0xff;
    
    //四路IO同步反向流水灯(核心花样效果)
    temp0=0xfe;  //仅最低位亮
    temp1=0x7f;  //仅最高位亮
    P1=P3=temp0;
    P2=P0=temp1;
    delay(100);
    for(i=7;i>0;i--)
    {
        temp0=_crol_(temp0,1); //循环左移,亮灯右走
        temp1=_cror_(temp1,1); //循环右移,亮灯左走
        P1=P3=temp0;
        P2=P0=temp1;
        delay(100);
    }
​
    //全端口闪烁收尾
    for(i=3;i>0;i--)
    {
        P0=P1=P2=P3=0x00;
        delay(300);
        P0=P1=P2=P3=0xff;
        delay(300);
    }
    while(1); //程序停住,防止跑飞
}

05原理图

注:

  1. 源码使用Keil4或Keil5打开

  2. 仿真使用的是Proteus8.13及以上版本,版本过低可能会打不开。

06资料获取

1)项目完整资料获取链接:下载链接

2)Keil、Proteus各个版本安装包: 下载链接

posted @ 2026-06-26 17:54  _Passion  阅读(1)  评论(0)    收藏  举报