单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库

时间:2019-05-14 01:32:07下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库》。

第一篇:单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库

单片机流水灯程序设计集锦输入您的搜索字词提交搜索表单请输入关键字搜索Web

这篇文章已经浏览了:233次

这里本站向大家介绍单片机几款流水灯设计程序

51单片机流水灯C语言源程序 ********************************** 文件名称:flash_led.c

文件说明:流水灯C程序

编写日期:2006年10月5日

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

****************************************************** #include //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=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程序对应流水灯从全亮到一个一个灭

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

*************************************************************/ #include

#include

#include

#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: 主函数

*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 : 2008.6.20 *

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

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

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

下载单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库word格式文档
下载单片机流水灯程序设计集锦 输入您的搜索字词 提交搜索表单文库.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐