基于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原理图

注:
源码使用Keil4或Keil5打开
仿真使用的是Proteus8.13及以上版本,版本过低可能会打不开。
06资料获取
1)项目完整资料获取链接:下载链接
2)Keil、Proteus各个版本安装包: 下载链接

浙公网安备 33010602011771号