0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

几个使用单片机设计流水灯的程序概述

Wildesbeast 来源:单片机教程网 作者:豪杰电子工作室 2020-06-13 11:13 次阅读

51单片机流水灯C语言源程序(源创) **************************************************************

文件名称:flash_led.c

文件说明:流水灯C程序

编写人员:Jerry Yang

编写日期:2006年10月5日

程序说明:MCU采用AT89S51,外接12M晶振,P1口输出

*************************************************************/

#include《reg51.h》 //51系列单片机定义文件

#define uchar unsigned char //定义无符号字符

#define uint unsigned int //定义无符号整数

void delay(uint); //声明延时函数

void main(void)

{

uint i;

uchar temp;

while(1)

{

temp=0x01;

for(i=0;i《8;i++) //8个流水灯逐个闪动

{

P1=~temp;

delay(100); //调用延时函数

temp《《=1;

}

temp=0x80;

for(i=0;i《8;i++) //8个流水灯反向逐个闪动

{

P1=~temp;

delay(100); //调用延时函数

temp》》=1;

}

temp=0xFE;

for(i=0;i《8;i++) //8个流水灯依次全部点亮

{

P1=temp;

delay(100); //调用延时函数

temp《《=1;

}

temp=0x7F;

for(i=0;i《8;i++) //8个流水灯依次反向全部点亮

{

P1=temp;

delay(100); //调用延时函数

temp》》=1;

}

}

}

void delay(uint t) //定义延时函数

{

register uint bt;

for(;t;t--)

for(bt=0;bt《255;bt++);

}

/************************************************************

*89C51、S51单片机32个IO口流水灯测试程序

*Flash0、1、2、3分别对应单片机的P0、1、2、3四个口

*a程序对应流水灯从全灭到一个一个亮

*b程序对应流水灯从全亮到一个一个灭

*Author:大灵通

*2006-7-26 10:57,OK!

*************************************************************/

#include《reg51.h》

#include《intrins.h》

#include《absacc.h》

#define uchar unsigned char

#define uint unsigned int

#define TimeDelay 60000

void delay(uint n);

void Flash0a(void);

void Flash0b(void);

void Flash1a(void);

void Flash1b(void);

void Flash2a(void);

void Flash2b(void);

void Flash3a(void);

void Flash3b(void);

/************************************************************

*Function: 主函数

*parameter:

*Return:

*Modify:

*************************************************************/

void main(void)

{

while(1)

{

Flash1b();

Flash1a();

delay(TimeDelay);

delay(TimeDelay);

Flash0b();

Flash0a();

Flash2b();

Flash2a();

Flash1b();

Flash1a();

Flash3b();

Flash3a();

}

}

/************************************************************

*Function: 延时

*parameter:

*Return:

*Modify:

*************************************************************/

void delay(uint n)

{

while(n!=0)

{

n--;

}

}

void Flash0a(void)

{

uchar i;

uchar Temp;

Temp = 0x80;

for(i=0;i《8;i++)

{

P0 = ~Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P0 = 0xff;

}

void Flash0b(void)

{

uchar i;

uchar Temp;

Temp = 0x80;

for(i=0;i《8;i++)

{

P0 = Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P0 = 0;

}

void Flash1a(void)

{

uchar i;

uchar Temp;

P1 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P1 = ~Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P1 = 0xff;

}

void Flash1b(void)

{

uchar i;

uchar Temp;

P1 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P1 = Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P1 = 0;

}

void Flash2a(void)

{

uchar i;

uchar Temp;

P2 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P2 = ~Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P2 = 0xff;

}

void Flash2b(void)

{

uchar i;

uchar Temp;

P2 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P2 = Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P2 = 0;

}

void Flash3a(void)

{

uchar i;

uchar Temp;

P3 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P3 = ~Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P3 = 0xff;

}

void Flash3b(void)

{

uchar i;

uchar Temp;

P3 = 1;

Temp = 0x80;

for(i=0;i《8;i++)

{

P3 = Temp;

delay(TimeDelay);

Temp = Temp 》》 1;

}

P3 = 0;

}

===========

;P1口八个LED灯做三路流水灯实验

;***************************************************************

;* Date : 2004.4.20 *

;* Support Mb:020-34007281 E-mail:c51cn@163.com *

;* Create by :dengdewu http://www.c51.cn 更多例程请登陆网站 *

;* 网站单片机学习资料同步更新,敬请新老朋友随时关注 *

;***************************************************************

ORG 0000H

LJMP MAIN

ORG 030H

MAIN:MOV P1,#0DBH ;11011011--0为亮,1为灭

ACALL DELAY

MOV P1,#06DH ;01101101

ACALL DELAY

MOV P1,#0B6H ;10110110

ACALL DELAY

AJMP MAIN

DELAY:MOV R7,#255 ;延时子程序

D1: MOV R6,#255

D2: DJNZ R6,D2

DJNZ R7,D1

RET

END

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 51单片机
    +关注

    关注

    274

    文章

    5702

    浏览量

    123578
  • 流水灯
    +关注

    关注

    21

    文章

    432

    浏览量

    59706
  • 程序
    +关注

    关注

    117

    文章

    3786

    浏览量

    81027
收藏 人收藏

    评论

    相关推荐

    基于51单片机的跑马灯/流水灯系统

    具体实现功能(1)9种LED流水灯模式通过按键进行切换,数码管显示流水灯模式。(2)通过加减按键可以切换每种LED流水灯的速度。仿真演示视频:设计介绍51单片机简介51
    的头像 发表于 10-22 14:12 227次阅读
    基于51<b class='flag-5'>单片机</b>的跑马灯/<b class='flag-5'>流水灯</b>系统

    单片机怎么写入程序

    程序通常涉及以下几个步骤: 选择单片机和开发环境 : 确定项目需求,选择合适的单片机型号。 安装相应的开发环境,如Keil、IAR、MPLAB等。 硬件连接 : 将
    的头像 发表于 10-21 11:21 457次阅读

    keil可以读出单片机程序

    Keil是一款广泛应用于单片机程序开发的软件,它提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案。然而,关于Keil是否能直接“读出”单片机程序
    的头像 发表于 09-02 10:32 947次阅读

    单片机烧录程序用什么软件

    单片机烧录程序单片机开发过程中的一个重要环节,涉及到将编写好的程序代码通过烧录器写入单片机的ROM中,以实现对
    的头像 发表于 09-02 10:05 1205次阅读

    单片机烧录程序可以重新烧吗

    单片机(Microcontroller Unit, MCU)是一种集成电路芯片,它将计算机的CPU、存储器、输入/输出接口等集成在一块芯片上,用于控制各种电子设备。单片机烧录程序是指将编写
    的头像 发表于 09-02 10:04 1229次阅读

    单片机烧录程序的线比单片机上的少还能烧录吗

    单片机烧录原理 单片机烧录是指将编写好的程序代码通过一定的方式传输到单片机的存储器中,使其能够按照程序的指令运行。这个过程通常需要使用烧录器
    的头像 发表于 09-02 09:54 498次阅读

    单片机烧录程序的基本步骤是什么

    单片机烧录程序的基础,它包含了单片机芯片、电源、接口等基本元件。在选择单片机开发板时,需要考虑以下几个方面: (1)
    的头像 发表于 09-02 09:47 1035次阅读

    单片机POV LED流水灯制作

    电子发烧友网站提供《单片机POV LED流水灯制作.docx》资料免费下载
    发表于 05-28 14:34 3次下载

    51单片机流水灯制作

    流水灯是学习51单片机的一个基本项目,是我们对单片机IO口输出认识的基本项目。当然学会了花样流水灯也很好玩。 下面就分享一种51单片机
    的头像 发表于 02-26 10:06 1625次阅读
    51<b class='flag-5'>单片机</b><b class='flag-5'>流水灯</b>制作

    什么是单片机? 单片机由哪几个主要部分组成?

    单片机是一种集成电路芯片,具有处理器核心、存储器、输入输出接口等主要部分。它可以用来控制并执行各种任务,广泛应用于电子产品中。 一、单片机概述 单片机是指在一块集成电路中集成了中央处
    的头像 发表于 01-22 10:38 9259次阅读

    单片机编程实例介绍

    是指使用特定的编程语言编写控制单片机工作的程序。 在本文中,将为您提供一些常见的单片机编程实例,包括基础应用、传感器应用、通信应用等方面的案例。 一、基础应用 LED流水灯
    的头像 发表于 01-16 09:37 2625次阅读

    基于单片机的简易烘手机设

    电子发烧友网站提供《基于单片机的简易烘手机设计.rar》资料免费下载
    发表于 01-12 10:45 1次下载

    单片机芯片怎么写入程序

    单片机芯片的程序写入是通过将程序代码写入单片机芯片的非易失性存储器(如Flash)中实现的。 在计算机科学和电子工程领域,单片机是一种集成电
    的头像 发表于 01-05 14:06 8328次阅读

    基于单片机的简易烘手机设

    电子发烧友网站提供《基于单片机的简易烘手机设计.rar》资料免费下载
    发表于 01-02 10:08 1次下载

    PLC控制8盏流水灯电路原理图和实际接线图详解

    PLC控制8盏流水灯电路原理图和实际接线图
    的头像 发表于 12-27 11:47 6567次阅读
    PLC控制8盏<b class='flag-5'>流水灯</b>电路原理图和实际接线图详解