改延时while(t--);或改for循环中参数time(m-k+1);,随便改哪一种都可以,只是呼吸周期略有区别。
- #include <reg52.h>
- sbit led=P1^1;
- void time(unsigned int t)
- {
- while(t--);
- } //延时函数
- void main()
- {
- unsigned int m=500,k=0;
- while(1) //主循环
- {
- for(k=1;k<m;k++)
- {
- led=0;
- time(k);
- led=1;
- time(m-k);
- } //逐渐变亮
- for(k=500;k>0;k--)
- {
- led=0;
- time(k);
- led=1;
- time(m-k);
- } //逐渐变暗
- }
- }
复制代码
#include <reg52.h>
sbit led=P1^1;
void time(unsigned int t)
{
while(--t);
} //延时函数
void main()
{
unsigned int m=500,k=0;
while(1) //主循环
{
for(k=1;k<m;k++)
{
led=0;
time(k);
led=1;
time(m-k+1);
} //逐渐变亮
for(k=500;k>0;k--)
{
led=0;
time(k);
led=1;
time(m-k+1);
} //逐渐变暗
}
} |