伽瑪校正用于校正亮度和亮度之間的非線性關(guān)系。本應(yīng)用筆記給出了為MAXQ2000微控制器(μC)編寫的匯編程序,該程序使用伽馬校正和固定頻率PWM信號線性增加和減少LED的亮度。存儲在實(shí)用ROM存儲器中的查找表(LUT)中的PWM占空比經(jīng)過伽馬校正以產(chǎn)生線性亮度變化。該軟件使用免費(fèi)的MAX-IDE開發(fā)工具進(jìn)行編譯,運(yùn)行在MAXQ2000評估板上。
背景
當(dāng)LED發(fā)光時,伽馬校正用于解釋亮度和亮度之間的冪律關(guān)系。雖然經(jīng)常互換使用,但亮度和亮度不是同義詞。
亮度:發(fā)射光,每單位面積投影,單位為cd/m2(坎德拉/米2)。
亮度:人眼賦予的感知亮度。
冪律關(guān)系可以近似為:
在此討論中,γ等于 2.5。
控制發(fā)光二極管強(qiáng)度
附錄 A 是一個裝配程序,它線性地增加和降低 LED 的亮度。強(qiáng)度值已經(jīng)過伽馬校正,以近似亮度的線性變化。
LED 使用 PWM 進(jìn)行控制。定時器0在P0.0上產(chǎn)生PWM信號(在MAX3評估板上U11的LED2000上可見),并設(shè)置為16位重載/比較定時器模式。在此模式下,計時器 0 生成兩個中斷請求 (IRQ):一個在計時器溢出時,另一個在計時器等于 T2C0 中的比較值時。圖1說明了此過程如何產(chǎn)生PWM信號。請注意,溢出 IRQ 控制 PWM 周期,而比較 IRQ 控制 PWM 占空比。
圖1.使用定時器 0 生成 PWM 信號。
定時器1用于改變定時器0的PWM占空比,從而改變LED的強(qiáng)度。每 50 毫秒,計時器 1 生成一個溢出 IRQ,將查找表 (LUT) 中的新值加載到 T2C0 寄存器中。
使用公式2計算伽馬校正PWM占空比,其中:
T2C0γ = 計時器 0 的伽瑪校正比較值
T2C0 = 計時器 0 的非伽馬校正比較值
γ = 伽馬校正因子(即 2.5)
count 是定時器0上重新加載之間的定時器步數(shù)(即,10000h-0C000h = 04000h)
偏移量是計時器 0 重新加載值(即 0C000h)
例如,當(dāng)計時器 0 重新加載值為 0C000h 時,每次重新加載之間都會發(fā)生 04000h 計時器步驟。假設(shè)使用 32 個 PWM 占空比來增加 LED 的強(qiáng)度,并且基于 LUT,定時器 0 (T2C0) 的非伽馬校正比較值為:
0C000h 0C200h 0C400h ... 0FA00h 0FC00h 0FE00h
每個值之間的差值為 0200h,即 04000h 除以 32。使用公式 2 對上述值進(jìn)行伽馬校正,得出以下 T2C0 值(圖 2):
0C000h 0C002h 0C010h ... 0F209h 0F676h 0FB1Dh
附錄 A 中的源代碼略微調(diào)整了這些值,以消除計時器問題。例如,計時器 0 在發(fā)生 IRQ 時不會停止。因此,必須注意確保重載值不接近比較值(即,T2C0 - T2R0 >某個最小正值)。
圖2.伽瑪校正了 T2C0。
使用查找表 (LUT)
前面提到的PWM占空比值存儲在MAXQ2000微控制器程序存儲器的LUT中。雖然將程序存儲器用于常量和LUT可以釋放數(shù)據(jù)存儲器,但它確實(shí)需要更長的訪問時間。
實(shí)用程序ROM功能moveDP1用于從程序存儲器中檢索數(shù)據(jù)。注意,由于實(shí)用程序ROM的未來版本可能不在MAXQ2000的ROM中的同一位置,用戶應(yīng)從存儲在地址0800Dh的實(shí)用程序ROM功能表中加載每個功能的地址。幸運(yùn)的是,這可以在程序初始化期間完成,并且可以保存函數(shù)地址以供以后在程序中使用。
附錄 A 中的源代碼將 moveDP1 實(shí)用程序 ROM 函數(shù)的地址加載到 A[4] 寄存器中,并使用此保存的地址調(diào)用該函數(shù)。
結(jié)論
使用 LUT 保存預(yù)先計算的計算結(jié)果可以顯著提高固件執(zhí)行速度。如果LUT保存在程序存儲器中,MAXQ2000實(shí)用程序ROM功能可快速訪問數(shù)據(jù)。為了進(jìn)一步提高固件執(zhí)行速度,MAXQ2000可以在程序初始化時將LUT數(shù)據(jù)從程序存儲器加載到SRAM中。
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7578瀏覽量
151737 -
led
+關(guān)注
關(guān)注
242文章
23321瀏覽量
661909 -
存儲器
+關(guān)注
關(guān)注
38文章
7520瀏覽量
164086
發(fā)布評論請先 登錄
相關(guān)推薦
評論