标题: 51单片机模拟呼吸灯 [打印本页]

作者: cirvis    时间: 2015-9-13 21:34
标题: 51单片机模拟呼吸灯
//******************************
//   51单片机模拟呼吸灯
//     2012.9.23
//      menglei
//     p0.0接一个LED灯,状态0为亮
//******************************

#include<reg52.h>
#define N 2 //亮暗的速率
#define T 800 //PWM的周期
#define T1 1400
#define T2 900
//sbit led0=P0^0;
//======================
void pwm(int x)
{
while(x--);
}
//======================
void flash1(void){
    int t = 0;
    char f = 0;
    int count = 5;//5次,每个函数执行的次数
    while(1){
  P0 = 0x00;
  pwm(t);   //Toff,亮的时间
  //led0=1;
  P0 = 0xff;
  pwm(T-t+100);//Ton,暗的时间
  if(!f) t+=N+1;//亮速率较快,模拟呼吸
  else t-=N;//暗速率较慢
  if(t>T) {f=1;t=T;}//超过最大值时,返回最大值,标志为暗
  if(t<0) {f=0;t=0;}//超过最小值时,返回最小值,标志为亮
// count--;
  }
}
void main()
{

while(1)
{
    flash1();
  }
}

作者: bhjyqjs    时间: 2015-9-15 08:19
这块MCU不干别的事吗?
作者: 诗和远方1515    时间: 2016-7-16 14:15
谢谢楼主分享资料,学习中

作者: 无敌最俊朗    时间: 2017-6-18 22:13
谢谢楼主分享资料
作者: faridzled    时间: 2017-6-19 06:40
thanks for sharing




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1