找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 14295|回复: 5
收起左侧

51单片机LED跑马灯程序设计+仿真+实验报告

[复制链接]
ID:428828 发表于 2018-11-18 20:07 | 显示全部楼层 |阅读模式
LED流水灯现象:LED 流水灯就是一串 LED灯泡依次点亮,起到变换闪烁的效果

LED流水灯工作原理:
LED流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统, 即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。从下图中可以看出,如果要让接在 P1.0 口的 LED1 亮起来,那么只要把 P1.0 口的电平变为低电平就可以了;相反, 如果要接在 P1.0口的 LED1 熄灭,就要把 P1.0口的电平变为高电平;同理,接在 P1.1~P1.7 口的其他 7个 LED 的点亮和熄灭的方法同 LED1.因此,要实现流水灯功能,我们只要将发光二极管 LED1~LED8依次点亮、熄灭,8只 LED 灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
0.jpg 0.png

单片机源程序如下:
  1. /*  名称:从左到右的流水灯
  2.   说明:接在P0口的8个LED 从左到右循环依次点亮,
  3.   产生走 马灯效果 */

  4. #include<reg51.h>
  5. #include<intrins.h>
  6. #define uchar unsigned char
  7. #define uint unsigned int

  8.         //延时
  9. void Delayms(uint x)
  10. {  
  11.         uchar i,j;
  12.                   
  13.                   for(i=x;i>0;i--)
  14.                           for(j=115;j>0;j--);   
  15.   }

  16. void main()
  17. {
  18.         P0=0XFE;

  19.         while(1)
  20.         {
  21.                 P0=_crol_(P0,1);
  22.                 Delayms(1500);
  23.         }

  24. }
复制代码

所有资料51hei提供下载:
跑马灯LED.zip (133.5 KB, 下载次数: 165)
回复

使用道具 举报

ID:630709 发表于 2019-10-26 22:55 | 显示全部楼层
好东西啊
回复

使用道具 举报

ID:431591 发表于 2019-12-12 09:23 | 显示全部楼层
很好,初次学习,很有帮助
回复

使用道具 举报

ID:748370 发表于 2020-5-10 15:22 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:748481 发表于 2020-5-10 17:32 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:770036 发表于 2020-6-5 10:12 | 显示全部楼层
谢谢,非常实用
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表