上一章我们讲了LED闪烁,这一次我们来讲LED流水灯;
由于我的开发板没有流水灯模块,我利用静态数码管来代这一个实验;

  1. 数码管原理图:

    图1—— 从图可以知道,这是一个共阳极,点亮LED需要低电位。

2.实现思路,把它拆分成多个小步骤:
2.1 让每一个LED闪烁一次,轮流闪烁,一直循环着,根据不同的顺序可以实现不同的流水效果;
2.2 点亮LED,闪烁LED,一个接着一个闪烁,形成顺序,一直循环,形成流水。
3.将想法转化为代码:

下面实现从高位到低位的流水灯:

//APDX's Blog
#include <reg52.h> //关于“reg52.h”和<reg52.h>的区别,上一章已经提过了;
void delay(unsigned int i)  //延时函数
{while(i--);
}
void main()
{unsigned char i;//循环变量
unsigned char tmp=0x80;for(i=0;i<8;i++)
{P0=0xFF; //熄灭所有LED灯,以免受到上一次的影响
P0 = ~tmp; //低电位点亮,所以要对tmp进行取反操作
tmp = tmp >> 1;  //逻辑右移一位,点亮次高位的LED灯
delay(40000)
if(i==8)   //满八次的话,再回到第一次循环
{i=0;
tmp=0x80;}
}
}

实现效果:

画质将就一下,嘻嘻 (^ ^)
下面来玩一个有意思的吧:
按照8字的形状来流水,学到后面可以加上按键模块,用按键控制LED,加上蜂鸣器,等等。
期待的话,快关注我吧。

//APDX's Blog
#include <reg52.h>unsigned char number[8]={0xbf,0xdf,0xfe,0xfd,0xbf,0xef,0xf7,0xfb}; //定义一个数组,
void delay (unsigned int i) //延时函数
{while(i--);
}
void main()
unsigned char i;for(i=0;i<8;i++){P0=0xff;P0 = number[i]; //点亮某一个LED灯delay(40000);if(i==8)    //判断,8次再从头开始
i=0;}}

效果实现

这一些都是一些很简单的东西,动动脑筋实现你的idea吧!

下一章,会是什么内容呢?

三、实现LED花样流水相关推荐

  1. 51单片机LED花样流水灯实验

    #include <reg52.h> typedef unsigned char u8; typedef unsigned int u16; void delay(u16 t)  //延时 ...

  2. LED学习及一个花样流水灯的实现

    在STC89C52RC中,负责显示的有8个LED灯,8位数码管,并且支持1602和12864两种液晶显示屏:本篇总结的是8位红光LED灯模块. 主要处理的是点亮和熄灭灯的操作.0是点亮,1是熄灭.其中 ...

  3. 花样流水灯1:查表显示LED灯(原理图+程序+仿真)

    目录 硬件电路设计 仿真电路设计 程序设计 学习了LED灯的左移和右移后,下面实现多种方式的花样流水灯. 硬件电路设计 结合51单片机最小系统的知识,利用AD19画好最小系统电路(未包括电源部分). ...

  4. 基于51单片机的花样流水灯设计

    文章目录 一.前言 二.模块介绍及原理说明 三.硬件连接 四.程序说明 五.效果演示 六.代码链接 一.前言 花样流水灯就是让LED灯按照一定规律进行各种变化,流水灯在生活中也随处可见,例如在建筑物的 ...

  5. 基于FPGA的花样流水灯

    今天一个学弟来问我关于状态机的事,我就给他讲了下经典的三段式状态机,然后就让他试着用状态机去点亮几个LED灯. 状态一:让所有的灯全部熄灭:状态二:全部的灯按照奇偶位的来进行闪烁:状态三:全部的灯从左 ...

  6. (37)FPGA花样流水灯设计(第8天)

    (37)FPGA花样流水灯设计(第8天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA花样流水灯设计(第8天) 5)技术交流 6)参考资料 2 FPGA ...

  7. 单片机C语言流水灯花样编程,单片机C语言程序设计:花样流水灯

    /*   名称:花样流水灯 说明:16 只 LED 分两组 按预设的多种花样变换显示 */ #include #define uchar unsigned char #define uint unsi ...

  8. 基于proteus的花样流水灯的设计(仅供参考)

    要求: (1)第1轮:第1列自上而下逐一点亮.接着第2列自下而上逐一点亮.最后第3列自上 而下逐一点亮: (2)第2轮:按第1列.第2列.第3列,依次8个LED同时闪亮3次: (3)接着重复上述第1. ...

  9. 基于计算机控制的花样流水灯,花样流水灯文献综述

    文献综述 关于花样流水灯的文献综述 摘要:近年来,以传统的分立元件或逻辑电路构成的控制系统,正逐渐被单片机智能控制系统所代替.而花样流水灯也被大量应用在当今社会的每个角落,本文综述了国内外对流水灯的研 ...

最新文章

  1. 制作模拟器和真机通用静态库
  2. 设计出python_Python: 实际项目中抽象出的小项目设计
  3. python算法编程_Python算法编程
  4. nginx 学习笔记【持续更新...】
  5. docker 导出堆栈信息.hprof_JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用...
  6. 应对计算机领域中后门,网络课程论坛中长尾现象的应对策略——以《计算机应用基础》网络课程为例...
  7. JAVE amr转换mp3
  8. oracle 对表重建索引,重建特定Oracle表的所有常规索引
  9. 接口测试用例——测试用例评审
  10. Java多线程学习笔记-线程的状态
  11. vue项目中报常见错误
  12. bootstrap 日历
  13. css特殊符号编码大全
  14. VBS 对IBM Notes的常规操作
  15. 怎样批评同事不会错!
  16. 基于DGL库图神经网络教程(1)——基本的建图操作
  17. 【叶神中级】四篇-3.页面访问
  18. 5个开发必备的 Python 工具,你用过几个?
  19. 只有年轻人才能做数据分析师吗?
  20. 记 2017年初 美国游(图海、史诗级长文预警)

热门文章

  1. ubuntu18.04安装openvino2022.1
  2. Ubuntu18.04 WPS安装后,提示“系统缺失字体symbol、wingdings、wingdings 2、wingdings 3、webding”的解决方法
  3. 中英文全角半角括号转换
  4. 华为2016年精英挑战赛总结
  5. ROS+UR机械臂+Moveit+ 仿真与实体机械臂的使用+realsense相机+eye_handeye手眼标定(亲测有效)下
  6. java 椭圆焦点 求是否在圆内_椭圆焦点位置的确定
  7. 2019年个人成长总结
  8. 大牛手把手教你!Service有几种启动方式?吐血整理
  9. 利用Mininet环境-交换机转发实验整个过程
  10. “赋能开发者”高峰论坛暨西安葡萄城30周年庆典隆重举办