|
我想做個(gè)點(diǎn)亮led燈1秒,暗10秒,循環(huán)10次程序停止,網(wǎng)上找了一些程序拼湊而成,我是新手還沒入門呢,x的10次循環(huán)不知道怎么退出,延時(shí)循環(huán)一直用累減循環(huán),會(huì)不會(huì)浪費(fèi)cpu(mcu)資源、減少壽命,浪費(fèi)電池電量。還有網(wǎng)上查的1s=1000000us,實(shí)測是255000us。
下面的程序,x的10次循環(huán)怎么退出啊,想運(yùn)行10次就讓單片機(jī)休息,停止工作,怕一直工作下去累壞了,后面加了return 0程序出錯(cuò),while循環(huán)還不會(huì)寫。
#include<reg52.h>
sbit LED0=P1^0;
void Delay_1s();
void Delay_10s();
unsigned int i,j,k;
void delay_1s()
{
for(i=95;i>0;i--)
for(j=26;j>0;j--)
for(k=46;k>0;k--);
}
void delay_10s()
{
unsigned int i,j,k;
for(i=73;i>0;i--)
for(j=249;j>0;j--)
for(k=63;k>0;k--);
}
void main (void)
{
int x;
for (x=1; x<=10; x++)
{
LED0=0;
Delay_1s();
LED0=1;
Delay_10s();
}
}
|
|