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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 22468|回復: 7
收起左側

我制作的單片機呼吸燈程序

  [復制鏈接]
ID:232530 發表于 2017-12-8 18:16 | 顯示全部樓層 |閱讀模式
參考了51hei論壇 hongru的作品,做出了一點修改
呼吸燈就是讓LED燈的閃爍像呼吸一樣,時呼時吸,時亮時暗,利用LED的余輝和人眼的暫留效應,看上去和人的呼吸一樣。
用C語言編程實現PWM(脈寬調制)輸出驅動LED,逐漸增加PWM的占空比從而實現LED模擬呼吸的過程,即漸亮再漸暗再漸亮再漸暗……如此往復,再利用LED的余輝和人眼的暫留效應,看上去就和人的呼吸一樣。
我認為這個程序不需要先拉低P1口,如果拉低了,燈會有卡頓的感覺。

單片機源程序如下:
  1. #include<reg51.h>
  2. void Delay1(int del)
  3. {
  4.         int i,j;
  5.         for(i=0; i<del; i++)
  6.         for(j=0; j<1827; j++)   
  7.         ;
  8. }
  9. void Delay(unsigned int t)
  10. {
  11. while(--t);
  12. }
  13. //函數聲明
  14. unsigned int z,y;
  15. void main (void)//主函數
  16. {
  17.         unsigned int CYCLE=400,PWM_LOW=0;//定義周期并賦值
  18.         while (1)         //主循環
  19.         {

  20. /*--------整排LED燈呼吸---------*/
  21.                
  22.                 Delay1(100);                                                                 //加延時,可以看到熄滅的過程(下面程序同理)
  23.                 for(PWM_LOW=1;PWM_LOW<CYCLE;PWM_LOW++)           //PWM_LOW表示低
  24.                         {
  25.                                 P1=0x00;                                       
  26.                                 Delay(PWM_LOW);
  27.                                 P1=0xff;
  28.                                 Delay(CYCLE-PWM_LOW);
  29.                         }
  30.                 P1=0xff;                                                                               
  31.                 for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--)         //與逐漸變亮相反的過程
  32.                         {
  33.                                    P1=0x00;                                                        //點亮LED
  34.                                    Delay(PWM_LOW);
  35.                                    P1=0xff;                                                        //熄滅LED
  36.                                   Delay(CYCLE-PWM_LOW);                                //主循環中添加其他需要一直工作的程序,延時長度,600次循環中從599減至1
  37.                         }

  38. }
  39. }
復制代碼

所有資料51hei提供下載:
呼吸燈.zip (13.83 KB, 下載次數: 156)


評分

參與人數 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:483535 發表于 2019-3-3 09:25 | 顯示全部樓層
有用,有用,有用
回復

使用道具 舉報

ID:18591 發表于 2019-3-3 19:18 | 顯示全部樓層
不錯~~~~~~~~~~~~~~~
回復

使用道具 舉報

ID:471632 發表于 2019-3-30 11:51 | 顯示全部樓層
硬件連接呢?也順便公布一下呀!
回復

使用道具 舉報

ID:99259 發表于 2019-9-22 10:50 | 顯示全部樓層
好用,學習了。
回復

使用道具 舉報

ID:743219 發表于 2020-5-5 19:29 來自觸屏版 | 顯示全部樓層
tigerzq 發表于 2019-3-30 11:51
硬件連接呢?也順便公布一下呀!

led接p1
回復

使用道具 舉報

ID:762422 發表于 2020-6-12 20:11 | 顯示全部樓層
我led接P1口,可是二極管沒反應,求解答
回復

使用道具 舉報

ID:138956 發表于 2020-10-4 18:34 | 顯示全部樓層
qwertyuiop_zsq 發表于 2020-6-12 20:11
我led接P1口,可是二極管沒反應,求解答

你怎么接的?按我的理解,發光二極管的A極接+5V,K極接P1口,你這樣試試。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表