用C语言编写一个花样流水灯的程序及此程序的流程图

用C语言编写一个花样流水灯的程序及此程序的流程图,第1张

设一个标志位flag, 以标志位的5种状态对应发光二极管的5种工作状态,如当flag=1;发光二极管工作在1,当flag=2;发光二极管工作在2,!然后根据定时器定时功能,5秒到,刷新flag的值,程序如下;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;/程序功能:定时5S到切换LED显示状态

;作者:w4187818402008529 /

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

FLAG BIT 30H ;定义标志位

ORG 0

LJMP MAIN

ORG 0BH

LJMP AGA

;;;;;;主程序;;;;;;;;;;;;

ORG 0030H

MAIN: MOV FLAG,#01H ;标志位清0

MOV TMOD,#01H ;赋值50MS

MOV TH0,#3CH

MOV TL0,#0B0H

MOV R0,#100 ;中断10050=5S

SETB EA

SETB ET0

SETB TR0

SJMP $

;;;;;;;;;中断服务程序;;;;;;;;;;;;;;

AGA: MOV TH0,#3CH

MOV TL0,#0B0H

DJNZ R0,LOOP ;5S到否否,返回

INC FLAG ;到,标志加1

MOV A,FLAG

CJNE A,#05,L1 ;扫描5种状态了否

MOV FLAG,#01H ;是,归0,重新开始

;;;;;;;;;切换程序;;;;;;;;;;;;

L1: CJNE A,#01H,L2 ;判断是否是状态1否,转判断2

LCALL LED1 ;是,调有状态1

SJMP LOOP ;返回

L2: CJNE A,#02H,L3 ; 以下跟上面判断相同

LCALL LED2

SJMP LOOP

L3: CJNE A,#03H,L4

LCALL LED3

SJMP LOOP

L4: CJNE A,#04H,L5

LCALL LED4

SJMP LOOP

L5: CJNE A,#05H,LOOP

LCALL LED5

LOOP: RETI

;;;;;;LED子程序区;;;;;;;;;;

LED1: RET

LED2: RET

LED3: RET

LED4: RET

LED5: RET

/////////////////

///////////////////////////////

/程序功能:定时5S到切换LED显示状态

作者:w4187818402008529 /

//========声明区===========

#include <reg51h>

unsigned char count=0;

unsigned char flag=1;

void led1(void);

void led2(void);

void led3(void);

void led4(void);

void led5(void);

//=========函数=========

main()

{ TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

while(1)

{ switch(flag)

{ case 1:led1();break;

case 2:led1();break;

case 3:led1();break;

case 4:led1();break;

case 5:led1();break;

}

}

}

//==========中断服务============

void timer0(void) interrupt 1

{ TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

if(++count==100)

{ count=0;

flag++;

if(flag==5)

flag=1;

}

}

//========5种状态函数区=========

程序如下:

#include <reg52h>

sbit led1 = P2^0;

sbit led2 = P2^1;

sbit led3 = P2^2;

sbit led4 = P2^3。

让电子信息技术与单片机技术相融合,有效提高了单片机应用效果。作为计算机技术中的一个分支,单片机技术在电子产品领域的应用,丰富了电子产品的功能,也为智能化电子设备的开发和应用提供了新的出路,实现了智能化电子设备的创新与发展。

从二十世纪九十年代开始,单片机技术就已经发展起来,随着时代的进步与科技的发展,目前该技术的实践应用日渐成熟,单片机被广泛应用于各个领域。现如今,人们越来越重视单片机在智能电子技术方面的开发和应用,单片机的发展进入到新的时期。

无论是自动测量还是智能仪表的实践,都能看到单片机技术的身影。当前工业发展进程中,电子行业属于新兴产业,工业生产中人们将电子信息技术成功运用。

单片机流水灯程序代码(汇编语言):ORG0000HAJMPMAINORG0030HMAIN:MOVP1,#11111110BACALLDELAY;跳转到子程序MOVP1,#11111101BACALLDELAYMOVP1,#11111011BACALLDELAYMOVP1,#11110111BACALLDELAYMOVP1,#11101111BACALLDELAYMOVP1,#11011111BACALLDELAYMOVP1,#10111111BACALLDELAYMOVP1,#01111111BACALLDELAYAJMPMAINDELAY:MOVR7,#10;延时1s子程序开始DEL1:MOVR6,#200DEL2:MOVR5,#250DJNZR5,$DJNZR6,DEL2DJNZR7,DEL1RETEND

1、流水灯是若干个灯泡依次点亮,视觉上感觉到灯光在流动就叫做流水灯。2、它是由无数个LED灯组成的,而LED就是发光二极管的简称,它有个特性:就是它只允许电流单一方向流过。如果让LED灯亮起来,他需要连接一个高电平和一个低电平,当它遇到低电平时它会亮起来而遇到高电平它就会熄灭。由于他只能单方向流过电流,所以也就会一亮一暗。

以上就是关于用C语言编写一个花样流水灯的程序及此程序的流程图全部的内容,包括:用C语言编写一个花样流水灯的程序及此程序的流程图、单片机流水灯程序、流水灯单片机程序代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9667811.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存