一、搭建流水灯电路图

首先画出仿真图,方便仿真程序

一般使用单片机的P1口 输出,不需要加上拉电阻。由图可看出这是共阳极的电路。

二、流水灯程序

单片机流水灯是在keil中利用C语言实现的,可通过三种方式来实现。三种方式分别是:

1.通过位移实现

2.使用移位函数(_crol_()或者_cror_())

1.

单片机的执行指令速度非常快,一个晶振是12MHz的单片机执行一条指令的速度是微秒级的,所以点亮第一个灯的时间太短了,以至于我们根本没有察觉。

因此我们需要一个延时的语句。

实现延时的方法就是循环执行很多次空指令。程序如下:

2.下面是通过位移来实现流水的程序。

一共8个灯,从第一个开始依次点亮,后面一个点亮,前一个就会熄灭。

3.使用移位函数(_crol_()或者_cror_())  需要包含头文件<intrins.h>

_crol_()、_cror_()分别是循环左移和循环右移函数。

3.下面是从中间向两边点亮的流水灯程序。

单片机入门——流水灯介绍相关推荐

  1. 51单片机入门 - 流水灯 和 呼吸灯

    本文编程环境在 51单片机开发环境搭建 - VS Code 从编写到烧录 有过介绍.使用 VS Code + SDCC + stcgal. 关于软硬件的信息: Windows 10 STC89C52R ...

  2. 51单片机入门流水灯

    文章目录 前言 一.延时函数 二.流水灯代码 三.代码改进 总结 前言 上次已经实现了LED的点亮了,这篇文章将带大家实现流水灯. 一.延时函数 要想实现流水灯首先就得知道什么是延时函数,延时函数的作 ...

  3. 51单片机:流水灯蜂鸣器控制

    //51单片机:流水灯&蜂鸣器控制 //bglei@nuaa.edu.cn 2022/8/28<流水灯&蜂鸣器控制> #include<reg52.h> #in ...

  4. pic单片机流水灯循环右移c语言,PIC单片机LED流水灯程序

    PIC 单片机 LED流水灯程序 ;************************************************************* include ;*********** ...

  5. 单片机c语言 流水灯 教案,单片机控制流水灯讲课教案.doc

    单片机控制流水灯 前言 随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯不断变化闪烁.LED灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市 ...

  6. Proteus:单片机 LED流水灯模拟

    题目概述: 单片机LED流水灯. 编程: #include <reg51.h> #include <intrins.h> #define uint unsigned int # ...

  7. 实现单片机控制流水灯代码

    可以使用C语言编写单片机控制流水灯代码,步骤如下:1. 控制单片机的IO口,把IO口设置为输出模式:2. 写一个循环,依次控制IO口输出高低电平:3. 将IO口的高低电平与流水灯相连,实现控制流水灯的 ...

  8. 51单片机循环流水灯源码

    51单片机循环流水灯源码 #include <reg52.h> #include <intrins.h> void delay(unsigned char a) {unsign ...

  9. 单片机stm32LED流水灯C语言,STM32单片机入门 篇二:单片机编程:从点亮LED灯开始(二)...

    STM32单片机入门 篇二:单片机编程:从点亮LED灯开始(二) 2019-04-26 13:21:48 19点赞 73收藏 19评论 写在前面的话:本篇是承接上一篇文章,属于小白向. 没看过的朋友点 ...

  10. 简单51单片机c语言编程流水灯,51单片机如何实现流水灯?51单片机实现流水灯的三种方法详细分析...

    描述 首先,介绍下原理.下图为主控芯片和流水灯模块的原理图.流水灯模块接在单片机的P1口,由原理图可以知道,在P1口给一个低电平即可点亮LED灯.相反,如果要LED灯熄灭,就要把P1口的电平变为高电平 ...

最新文章

  1. jQuery--AJAX传递xml
  2. 【Java基础】字符串与数组
  3. 各种过安全狗一句话***
  4. 如何在网页标题栏title加入icon图标?
  5. 银联基于OpenStack的金融私有云建设实践
  6. npm修改默认安装路径和数据源
  7. android 修改系统参数设置,2021-05-15 [RK3399][Android7.1] 调试笔记 ---显示参数动态设置接口...
  8. C#中使用SqlBulk百万级数据秒级插入
  9. 【Python】ffmpeg模块查询视频、音频信息
  10. latex中怎么设置每一行文字都对齐_排版系列教程 | LaTeX,为学术论文排版而生【浮动体篇】...
  11. python改变数组元素排序
  12. 07.计算Nova→2.nova组件详解→2.nova-scheduler
  13. LintCode—删除链表中倒数第n个节点(174)
  14. 社交网络分析-中心性指标
  15. MySQL 常用命令汇总
  16. 为什么我选择移民新西兰?
  17. jmeter基础之MD5加密
  18. matlab解线性方程组后结果是小数,MATLAB线性方程组求解
  19. Mysql 安装PMM监控 (一台主机安装)
  20. 转载 | 在阿里做了3年多程序员,我究竟学到了什么?

热门文章

  1. 深度学习在内窥镜图像方面的研究:
  2. python画父子关系图_python elasticsearch-dsl父子关系
  3. 计算机行业的未来10年发展前景,未来10年,这4大工作就业前景好,发展前途超过公务员...
  4. 树莓派4+神经计算棒二代开发-环境搭建
  5. STM32cube HAL库 I2C实现LM75数字温度传感器温度读取,并串口打印
  6. Android商业模式
  7. 有关于fprintf()函数的用法
  8. 实录分享|一篇文章看CNTV的容器化探索和平台搭建
  9. 添加或删除程序 0x00310030指令引用的0x00310030内存。该内存不能为written。
  10. 室内导航怎么实现?怎么做到零成本实现室内导航?