永发信息网

51单片机,呼吸灯

答案:2  悬赏:30  手机版
解决时间 2021-04-29 06:44
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-04-28 09:21

求一段51单片机呼吸灯的C程序,LED在P1^0   ,0为亮。

最佳答案
  • 五星知识达人网友:洒脱疯子
  • 2021-04-28 09:42

#include<reg52.h>
#define N 2 //亮暗的速率
#define T 700 //PWM的周期
sbit led=P1^0;
void pwm(int x)
{
 while(x--);
}
void main()
{
 int t=0;
 char f=0;//亮暗标志,0为亮
 while(1)
 {
  led=0;
  pwm(t);//Toff,亮的时间


  led=1;
  pwm(T-t);//Ton,暗的时间
  if(!f) t+=N+1;//亮速率较快,模拟呼吸
  else t-=N;//暗速率较慢
  if(t>T) {f=1;t=T;}//超过最大值时,返回最大值,标志为暗
  if(t<0) {f=0;t=0;}//超过最小值时,返回最小值,标志为亮
 } 
}

全部回答
  • 1楼网友:轻雾山林
  • 2021-04-28 10:07

#include <REG51.H>

void main()

{

while(1)

{

 P1^0=0;

}

}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯