51單片機(jī) 輸出pwm 控制led 亮度
標(biāo)簽: pwm led 51單片機(jī) 輸出
上傳時(shí)間: 2013-12-20
上傳用戶(hù):kristycreasy
用單片機(jī)做的PWM可變的控制LED亮度的小軟件
上傳時(shí)間: 2014-01-15
上傳用戶(hù):wangchong
本設(shè)計(jì)應(yīng)用AT89C52單片機(jī)對(duì)高亮度LED顯示屏進(jìn)行控制,可以實(shí)現(xiàn)漢字的翻轉(zhuǎn)功能,顯示的漢字通過(guò)RS232接口從計(jì)算機(jī)輸入。
上傳時(shí)間: 2014-01-20
上傳用戶(hù):李彥東
實(shí)驗(yàn)學(xué)習(xí)型電子鐘包括紅外線(xiàn)控制密碼da控制led亮度ad轉(zhuǎn)換語(yǔ)音轉(zhuǎn)換鬧鈴
標(biāo)簽: led 控制 轉(zhuǎn)換 實(shí)驗(yàn)
上傳時(shí)間: 2016-10-03
上傳用戶(hù):jackgao
DMX通訊程序。用于控制LED的亮度。RGB三中顏色。
上傳時(shí)間: 2016-10-16
上傳用戶(hù):onewq
一個(gè)利用脈寬控制可控硅電流以達(dá)到控制燈的亮度程序,也可應(yīng)于控制電振機(jī)(產(chǎn)品用)
上傳時(shí)間: 2014-12-20
上傳用戶(hù):TF2015
控制燈 的亮度, 和亮的時(shí)間, 對(duì)學(xué)習(xí)2051的人比較好
上傳時(shí)間: 2017-08-22
上傳用戶(hù):hustfanenze
DSP2812串口通信用來(lái)控制小燈的亮度
上傳時(shí)間: 2014-01-11
上傳用戶(hù):lwwhust
模擬PWM輸出控制燈的10個(gè)亮度級(jí)別,51單片機(jī)
上傳時(shí)間: 2017-09-28
上傳用戶(hù):1109003457
LED 一般是恒流操作的,如何改變 LED 的亮度呢?答案就是 PWM 控制。在一定的 頻率的方波中,調(diào)整高電平和低電平的占空比,即可實(shí)現(xiàn)。比如我們用低電平點(diǎn)亮一個(gè) LED 燈,我們假設(shè)把一個(gè)頻率周期分為 10 個(gè)時(shí)間等份,如果方波中的高低電平占空比是 9:1, 這是就是一個(gè)比較暗的亮度,如果方波中高低電平占空比是 10:0,這時(shí),全部是高電平, 燈是滅的。如果占空比是 5:5,就是一個(gè)中間亮度,如果高低比是 1:9,是一個(gè)比較亮的 亮度,如果高低是 0:10,這時(shí)全部是低電平,就是最亮的。 實(shí)際上應(yīng)用中,電視屏幕墻中的幾十百萬(wàn) LED 象素都是這樣控制的,而且每一個(gè)象素 都有紅綠藍(lán) 3 個(gè) LED,每個(gè) LED 可以變化的亮度是幾百到幾萬(wàn)或者更多的級(jí)別,以實(shí)現(xiàn)真 彩色的顯示。還有在您的手機(jī)中,背光燈的亮度如果是可以變化的,也應(yīng)該是這種工作方式。 目前的城市彩燈也有很多都使用了 LED,需要控制亮度是也是 PWM 控制。 下面來(lái)分析我們的例程,在這個(gè)例程中,我們將定時(shí)器 2 溢出定為 1/1200 秒。每 10 次脈沖輸出一個(gè) 120HZ 頻率。這每 10 次脈沖再用來(lái)控制高低電平的 10 個(gè)比值。這樣,在 每個(gè) 1/120 秒的方波周期中,我們都可以改變方波的輸出占空比,從而控制 LED 燈的 10 個(gè) 級(jí)別的亮度。 為什么輸出方波的頻率要 120HZ 這么高?因?yàn)槿绻l率太低,人眼就會(huì)看到閃爍感 覺(jué)。一般起碼要在 60HZ 以上才感覺(jué)好點(diǎn),120HZ 就基本上看不到閃爍,只能看到亮度的變 化了。 下面請(qǐng)看程序,程序中有比較多的注釋?zhuān)?nbsp; ――――――――――――――――――――――― #define uchar unsigned char //定義一下方便使用 #define uint unsigned int #define ulong unsigned long #include <reg52.h> //包括一個(gè) 52 標(biāo)準(zhǔn)內(nèi)核的頭文件 sbit P10 = P1^0; //要控制的 LED 燈 sbit K1= P3^2; //按鍵 K1 uchar scale;//用于保存占空比的輸出 0 的時(shí)間份額,總共 10 份 char code dx516[3] _at_ 0x003b;//這是為了仿真設(shè)置的 //模擬 PWM 輸出控制燈的 10 個(gè)亮度級(jí)別 void main(void) // 主程序 { uint n; RCAP2H =0xF3; //賦 T2 的預(yù)置值,溢出 1 次是 1/1200 秒鐘 RCAP2L =0x98; TR2=1; //啟動(dòng)定時(shí)器 ET2=1; //打開(kāi)定時(shí)器 2 中斷 EA=1; //打開(kāi)總中斷 while(1) //程序循環(huán) { ;//主程序在這里就不斷自循環(huán),實(shí)際應(yīng)用中,這里是做主要工作 for(n=0;n<50000;n++); //每過(guò)一會(huì)兒就自動(dòng)加一個(gè)檔次的亮度 scale++; if(scale==10)scale=0; } } //1/1200 秒定時(shí)器 2 中斷 timer2() interrupt 5 { static uchar tt; //tt 用來(lái)保存當(dāng)前時(shí)間在一秒中的比例位置 TF2=0; tt++; if(tt==10) //每 1/120 秒整開(kāi)始輸出低電平 { tt=0; if(scale!=0) //這里加這一句是為了消除滅燈狀態(tài)產(chǎn)生的鬼影 P10=0; } if(scale==tt) //按照當(dāng)前占空比切換輸出高電平 P10=1; } ―――――――――――――――――― 在主程序中,每延時(shí)一段時(shí)間,就自動(dòng)換一個(gè)占空比,以使亮度自動(dòng)變化,方便觀察。 編譯,運(yùn)行,看結(jié)果。 可以看到,LED 的亮度以每種亮度 1 秒左右不斷變化,共有 10 個(gè)級(jí)別。
上傳時(shí)間: 2017-11-06
上傳用戶(hù):szcyclone
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1