MAIN函数为什么是循环的效果?
时间:10-02
整理:3721RD
点击:
写了一个C程序,想让蜂鸣器响500MS,在停500MS,之后程序停止,可是为什么蜂鸣器不停的间断的响,好像MAIN函数就是在循环中一样的效果,哪位大虾能给分析分析,不胜感激!
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit beef=P2^3;
void delay(uint);
void main()
{
beef=0;
delay(500);
beef=1;
delay(500);
}
void delay(uint z)
{
uint x,y;
for(x=100;x>0;x--)
{
for(y=z;y>0;y--)
{}
}
}
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit beef=P2^3;
void delay(uint);
void main()
{
beef=0;
delay(500);
beef=1;
delay(500);
}
void delay(uint z)
{
uint x,y;
for(x=100;x>0;x--)
{
for(y=z;y>0;y--)
{}
}
}
beef=1;
delay(500);
上边两个语句是程序执行的最后两句。执行完了就会从头开始执行。你在delay(500)后边加个while(1)试试。
延时delay
void delay(uint x)
{
while(x--);
}
void main()
{
beef=0;
delay(500);
beef=1;
delay(500);
while(1);
}
小编的主程序这样写就能解决问题啦!