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

標題: STC單片機簡易呼吸燈的制作 [打印本頁]

作者: 51黑ww    時間: 2016-4-13 19:26
標題: STC單片機簡易呼吸燈的制作
STC學習筆記1-簡易呼吸燈的制作視頻:
http://player.youku.com/player.php/sid/XMzU0MzI1NzQ0/v.swf

介紹:只需要三個元件做一個簡易的呼吸燈,可以隨意調整呼吸的時間和呼/吸時間比。
比模擬電路搭的呼吸燈簡潔并且成本低很多,但是可控性絕對比模擬電路制作的好。

材料:
STC15F104E單片機一片
100Ω電阻一個
LED一個,顏色隨意


還有必備的一個STC單片機程序下載器,這個可以參考官網的MAX232串口下載器


或者購買的成品USB下載線。
需要引出四個引腳VCC,TX,RX,GND即可。

電路原理圖:


其中P3.0和P3.1接下載線下載。雖然可以在工作狀態下載,不過避免干擾,我們盡量少使用P3.0和P3.1引腳。

編寫以下程序:
有兩個版本,一個是單純的漸亮漸滅;第二個是亮滅時間比不同的,更接近實際的呼吸曲線。

版本1,漸亮漸滅時間一樣,但是肉眼看上去效果不好:
  1.     #include
  2.     sbit Pin = P3 ^ 3;
  3.     int bright = 0;
  4.     void Delay10us(unsigned int a)
  5.     {
  6.         unsigned int i;
  7.         while( a-- != 0)
  8.         {
  9.             for(i = 0; i < 6; i++) {};
  10.         }
  11.     }
  12.     main()
  13.     {
  14.         int i;
  15.             bit mark=0;
  16.         while(1)
  17.         {
  18.             if(bright == 255||bright==0) mark=!mark;
  19.                     (mark==1)?(bright++):(bright--);
  20.             for(i = 0; i < 255; i++)
  21.             {
  22.                 if(i < bright)
  23.                 {
  24.                     Pin = 0;
  25.                     Delay10us(2);
  26.                 }
  27.                 else
  28.                 {
  29.                     Pin = 1;
  30.                     Delay10us(2);
  31.                 }
  32.             }
  33.         }
  34.     }
復制代碼

版本2,漸亮漸滅時間不一致,但是視覺效果比較好(亮滅時間比9:4,滅到盡的時候等待500ms。):
  1.     /*
  2.     STC15F104E 呼吸燈
  3.     時鐘頻率5.004MHz
  4.     燈在P3.3引腳
  5.     By:Ansifa 2012-1-25
  6.     */
  7.     #include
  8.     sbit Pin = P3 ^ 3;
  9.     void Delay(unsigned int a)
  10.     {
  11.         while( a-- != 0)
  12.         {
  13.         }
  14.     }
  15.     void Delay2(unsigned long a)
  16.     {
  17.         while( a-- != 0)
  18.         {
  19.         }
  20.     }
  21.     main()
  22.     {
  23.         int i, delaytime;
  24.         bit mark = 0;
  25.         int bright = 0;
  26.         while(1)
  27.         {
  28.             if(bright == 0) Delay2(50000);
  29.             if(bright == 255 || bright == 0) mark = !mark;
  30.             if(mark == 1)
  31.             {
  32.                 bright++;
  33.                 delaytime = 9;
  34.             }
  35.             else
  36.             {
  37.                 bright--;
  38.                 delaytime = 4;
  39.             }
  40.      
  41.      
  42.             for(i = 0; i < 255; i++)
  43.             {
  44.                 if(i < bright)
  45.                 {
  46.                     Pin = 0;
  47.                     Delay(delaytime);
  48.                 }
  49.                 else
  50.                 {
  51.                     Pin = 1;
  52.                     Delay(delaytime);
  53.                 }
  54.             }
  55.         }
  56.     }
復制代碼

用Keil uVersion2編輯編譯。


用STC-ISP下載程序下載程序。


注意,是先按STC-ISP軟件上的按鈕,然后關閉單片機電源,再打開,才能進行開始下載:
如果使用USB下載線下載,但是軟件一直卡死在等待連接單片機的話,先檢查TX,RX有沒接反。還有單片機有沒電源。
然后降低下載軟件波特率:“最低波特率”=1200和“最高波特率”=1200,一般就能下載,如果不行的話,要考慮換一個下載線。
上圖的MAX232串口下載線是最穩定的。在任何速率都能使用。



呼吸燈工程文件.rar

1.55 KB, 下載次數: 68, 下載積分: 黑幣 -5


作者: 榆林上校    時間: 2016-4-14 13:24
好像在哪里見過此貼
作者: 妞妞妞    時間: 2017-2-25 09:53
這個,找了好久了!
作者: 妞妞妞    時間: 2017-2-25 13:56
當今的奮斗史的
作者: dzbj    時間: 2017-2-25 16:39
本帖最后由 dzbj 于 2017-2-25 16:43 編輯

效果不錯 可有個疑問 這么寫 一個片子只能干一件事 其它什么也干不了 效率太低了 還不如用555直接搭個電路啊 成本也會比這樣低很多啊 不考慮生產 只是自己做東西也有成本顧慮啊 再考慮到資源的占用 一個int一個long 消耗太大了 我是能用bit就不用char 能用char就不用int long到現在還沒用過 慚愧
我也不會寫呼吸燈 想過也沒什么頭緒 一直在找比較好的呼吸燈程序想學

作者: a598089072    時間: 2017-2-26 13:07
效果不錯
作者: csz9981    時間: 2017-2-26 13:16
STC單片機簡易呼吸燈的制作 [復制鏈接]
作者: isaacyoung    時間: 2017-2-26 18:09
感覺還不錯
作者: cxm98    時間: 2017-12-18 19:39
跟著圖焊了一個不帶電阻的,檢測了焊接沒什么問題,但是燒寫的時候檢測不到單片機,請問這是什么原因?
作者: bosschen    時間: 2018-5-28 13:36
請問樓主,這是用一個小LED燈 如果用12V多個LED燈的時候,單片機電流會超,那得用什么方漢來控制LED,最好能給低點電路圖,謝謝了
作者: bxyyhan    時間: 2018-5-28 17:08
bosschen 發表于 2018-5-28 13:36
請問樓主,這是用一個小LED燈 如果用12V多個LED燈的時候,單片機電流會超,那得用什么方漢來控制LED,最好 ...

加擴流電路,比如最常用的三極管。
作者: geekzhang    時間: 2019-3-9 20:42
通過調節延時參數來達到亮度控制嗎?
作者: bai8892558    時間: 2019-12-4 22:57
感謝大神指導
作者: 00一一    時間: 2019-12-6 15:47
很簡單實用的一個制作
作者: 咔咔啦16    時間: 2020-6-5 10:57
我去實驗試一下,擴展10個LED小燈看一下效果。




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