单片机作业1:实现流水灯亮的时候蜂鸣器响,流水灯灭停止发声

程序如下:

/*依次让LED灯点亮,时间间隔1S,亮1S,灭1S。在亮灯的同时蜂鸣器响,灭灯的时候蜂鸣器停止发声*/

#include<reg52.h>

#include<intrins.h>

char led[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//定义了八个灯的亮灭

sbit beep = P1^6; //定义蜂鸣器的管脚

char i;

void Delay1000ms()//@11.0592MHz

{

unsigned char i, j, k;

_nop_();

i = 8;

j = 1;

k = 243;

do

{

do

{

while (--k);

} while (--j);

} while (--i);

}

void main()

{

while(1)

{

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

{

P2 = led[i]; //亮灯

beep = 0; //蜂鸣器响

Delay1000ms();

P2 = 0xff; //灭灯

beep = 1; //蜂鸣器停止发声

Delay1000ms();

}

}

}

原文链接:,转发请注明来源!