標(biāo)題:
求程序 單片機pwm+LED
[打印本頁]
作者:
153759
時間:
2023-11-15 21:36
標(biāo)題:
求程序 單片機pwm+LED
由于本論壇禁止直接求程序,禁止伸手黨,所以向大家請教一下大致的實現(xiàn)方法與思路,理清頭緒后我自己來寫程序去實現(xiàn),謝謝大家
c51使用定時器產(chǎn)生PIM波控制LD燈的亮度頻率50Hz占空比可調(diào),調(diào)節(jié)范圍為01-99% 串口輸入需要調(diào)節(jié)的占空比,設(shè)置成功,返回Set is ok
幫助一下代碼編寫
作者:
yzwzfyz
時間:
2023-11-17 17:10
本帖最后由 yzwzfyz 于 2023-11-20 08:09 編輯
【頻率50Hz】折成時間 = 20ms。
【調(diào)節(jié)范圍為01-99%】也即要將20ms分成100份,取其中的1-99份。
所以:
定時器中斷時間為:20ms/100 =200us。
中斷服務(wù)程序這樣寫:(設(shè)LED接在P1.0上)
1、給出一個周期變量T100(初始=0,用于計數(shù)20mS周期,計數(shù)值 0-100)。定義一個脈寬調(diào)制計時變量TLEDH(計數(shù) LED=1 [高電平]的時間,計數(shù)范圍0-99,輸入你希望的值N,例N=39表示39%)
2、每次中斷 T100 +1 ,當(dāng)T100 = 100 時,讓T100 = 0,重新計數(shù),完成20ms周期計數(shù)。
判定:當(dāng)T100 = 0 時,讓 P1.0 = 1,PWM輸出1;
當(dāng) T100 = TLEDH 時 ;讓P1.0 = 0,PWM輸出0。
其它,什么也不做。
這樣你只要改變TLEDH的值1-99,就達成你的目的了。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1