单片机 流水灯怎样全部闪烁 五次之后停止

单片机 流水灯怎样全部闪烁 五次之后停止,第1张

可以用for循环试试unsingned char ifor(i=0i<5i++)//流水灯闪烁程序。

若干个灯泡依次点亮就叫流水灯,它用在夜间建筑物装饰方面。例如在建筑物的棱角上装上流水灯,可起到变换闪烁美不胜收的效果。

单片机(Single-Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能。

集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

// 改了一下试试

#include<reg52.h>//包含 reg52.h 这个头文件

#include<intrins.h>

#define led P2 //

char i

sbit k1=P3^6// 启动按键

sbit k2=P3^7 // 停止按键

bit  s=0       //  启停标志

char a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}//LED灯的数组

void delay1s(void)//延时函数

void liushuideng()//流水灯的循环

void main()

{

led=~0xff

k1=1

while(1)

{

if(k1==0)

{    

s = 1

}

if(k2==0)

{

s = 0

led=~0xff

}

if(s==1)

{

i = i + 1

if(i==8){i=0}

led=~a[i] //LED灯通过遍历数组产生变化

delay1s() //延时500ms

}

}

}

void delay1s(void) //误差 -0.000000000227us

{

unsigned char a,b,c

for(c=13c>0c--)

for(b=247b>0b--)

for(a=142a>0a--)

_nop_()//if Keil,require use intrins.h

}

循环3圈,就是循环3*8=24次,可以用个 for循环24次。

void main()

{ uchar a

uchar i

a=0xfe

for(i=0i<24i++)

{

P1=a

delayms(500)

a=_crol_(a,1)

}

while(1)//程序最后停在此死循环处,啥也不做

}


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

原文地址: https://outofmemory.cn/yw/11222543.html

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

发表评论

登录后才能评论

评论列表(0条)

保存