利用PWM技術控制LED亮度,不僅效率高、響應快,還能實現細膩的視覺過渡。系統(tǒng)介紹PWM的工作機制,結合具體硬件平臺,展示如何編程實現LED的漸亮漸滅,最終完成一個完整的呼吸燈項目。
本文特別分享PWM相關基礎知識,并以Air8000核心板為例,演示LuatOS開發(fā)中如何使用PWM功能實現LED亮度控制及呼吸燈效果,幫助開發(fā)者快速上手。
一、PWM相關基礎知識
PWM具有高效、控制精度高及實現簡便等優(yōu)點,但PWM信號可能產生高頻噪聲,需要濾波以減小干擾。另外,某些應用需要特定的硬件支持,如支持PWM輸入的微控制器或電路。
要想使用PWM,還需先了解PWM的相關參數和原理。
1.1 PWM參數
PWM的頻率:是指1秒鐘內信號從高電平到低電平再回到高電平的次數(一個周期),也就是說一秒鐘PWM有多少個周期。 單位:Hz。
PWM的周期:T=1/f周期=1/頻率
例如:如果頻率為50Hz,T=1/50=0.02s,也就是說一個周期是20ms;
1s=1000ms,那么一秒鐘就有50次PWM周期。
PWM的占空比:是一個脈沖周期內,高電平的時間占整個周期時間的比例。單位:% (0%-100%)
例如:一個周期10ms,高電平占8ms,那么此占空比就是8/10=80%。
1.2 PWM原理
單片機的IO引腳輸出的是數字信號,且只能輸出1和0,那如果 TTL電平中,高電平為5V,低電平為0V,但是我們想要輸出不同的模擬電壓,比如輸出3.75V應該怎么操作?
此時要用到PWM,通過改變IO口輸出方波的占空比,得到不同的模擬電壓。
3.75/5=0.75,也就是高電平時間占整個周期的75%,即占空比為75%,可得到模擬電壓3.75V。

注意上圖中藍線,代表著輸出的模擬電壓,占空比越大,則模擬電壓也越大。
二、PWM應用示例
Air8000相關管腳具有復用功能,結合原理圖引腳指示可知板載紅色LED由PIN24 GPIO21控制。本示例demo中已有配置好的pins_Air8000.json文件,測試demo時一并燒錄進Air8000核心板。

2.1 PWM輸出示例
本例使用Air8000核心板上的NetLed(網絡狀態(tài)燈),pwm通道id=4,打開pwm4通道的pwm輸出,設置不同的占空比,小燈會有不同的亮度。

2.2 PWM呼吸燈
本例使用Air8000核心板上的NetLed(網絡狀態(tài)燈),pwm通道id=4來查看呼吸燈效果。呼吸燈效果就是小燈由亮到暗逐漸變化,很有節(jié)奏感地一起一伏,好像人在呼吸的感覺。
我們可以通過不斷調高占空比讓小燈一點點亮起,再不斷調低占空比讓小燈一點點熄滅從而達到此效果。

今天的內容就分享到這里了~
審核編輯 黃宇
-
PWM
+關注
關注
116文章
5851瀏覽量
224074 -
LED調光
+關注
關注
0文章
66瀏覽量
16952
發(fā)布評論請先 登錄
MR-16LED燈專用LED降壓型恒流驅動器H5441B方案調光高輝度65536級
舞臺燈方案LED降壓驅動恒流芯片PWM高深度調光
FZH367 具有獨立自動呼吸功能的LED(12×16)點陣驅動芯片 原廠技術支持
智能吸頂燈/攝影補光燈專用!H5228雙通道LED驅動,高效節(jié)能省空間
6 通道 LED 背光驅動器,集成升壓和高頻直接 PWM 調光 skyworksinc
4 通道 LED 背光驅動器,具有集成升壓和高頻直接 PWM 調光 skyworksinc
【沁恒CH585開發(fā)板免費試用體驗】+PWM呼吸燈
SL8313降壓恒流芯片 耐壓100V 支持PWM和模擬調光 LED燈照明芯片
LED6001 PWM調光單通道LED驅動器,具有集成增壓控制器數據手冊
【幸狐Omni3576邊緣計算套件試用體驗】PWM呼吸燈
支持16位PWM調光,集成4路LED驅動,納芯微氛圍燈驅動NSUC1500點亮座艙新體驗

基于PWM的LED調光技術與呼吸燈實現方法!
評論