欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 通過PWM(脈寬調(diào)制)調(diào)節(jié)LED的亮度單片機源碼 [打印本頁]

作者: wkaikai520    時間: 2018-4-24 15:12
標(biāo)題: 通過PWM(脈寬調(diào)制)調(diào)節(jié)LED的亮度單片機源碼
通過PWM(脈寬調(diào)制)調(diào)節(jié)LED的亮度
------------------------------------------------*/

單片機源碼:
  1. #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
  2. sbit LED0=P1^0;// 用sbit 關(guān)鍵字 定義 LED到P1.0端口,LED是自己任意定義且容易記憶的符號

  3. void Delay(unsigned int t); //函數(shù)聲明
  4. /*------------------------------------------------
  5.                     主函數(shù)
  6. ------------------------------------------------*/
  7. void main (void)
  8. {
  9.                   
  10. unsigned int CYCLE=600,PWM_LOW=0;//定義周期并賦值
  11. while (1)         //主循環(huán)
  12.   {
  13. LED0=1;
  14. Delay(60000);        //特意加延時,可以看到熄滅的過程
  15. for(PWM_LOW=1;PWM_LOW<CYCLE;PWM_LOW++){ //PWM_LOW表示低
  16. //電平時間,這個循環(huán)中低電平時長從1累加到CYCLE(周期)的值,即600次
  17.      LED0=0;        //點亮LED  
  18.      Delay(PWM_LOW);//延時長度,600次循環(huán)中從1加至599
  19.      LED0=1;        //熄滅LED
  20.        Delay(CYCLE-PWM_LOW);//延時長度,600次循環(huán)中從599減至1
  21.      
  22.    }
  23. LED0=0;
  24. for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--){ //與逐漸變亮相反的過程
  25.      LED0=0;
  26.      Delay(PWM_LOW);
  27.      LED0=1;
  28.        Delay(CYCLE-PWM_LOW);
  29.      
  30.    }
  31.                      //主循環(huán)中添加其他需要一直工作的程序
  32.   }
  33. }
  34. /*------------------------------------------------
  35. 延時函數(shù),含有輸入?yún)?shù) unsigned int t,無返回值
  36. unsigned int 是定義無符號整形變量,其值的范圍是
  37. 0~65535
  38. ------------------------------------------------*/
  39. void Delay(unsigned int t)
  40. {
  41. while(--t);
  42. }
復(fù)制代碼







歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1