中穎MCU普通LED模塊(非恒流)提供了兩種LED驅(qū)動模式:亮滅模式、調(diào)光模式。兩種模式的功能及使用方法簡介如下:
1、模式1:亮滅LED模式
當LED驅(qū)動器工作在亮滅LED模式時,每一個LEDRAM位控制一個LED燈,當LEDRAM位為0時,LED熄滅,當LEDRAM位為1時,LED點亮;在LED一幀或者一個COM掃描結(jié)束后,LED驅(qū)動器對應的中斷標志位LEDIF或者COMIF標志位置1。
下面給出Mode1下,LED配置方法及其RAM的刷新流程。以需要顯示的LED幀頻200Hz(5ms)為例,當LED為5 COM且系統(tǒng)時鐘為RC 24MHz 時,
COM掃描寬度控制寄存器配置值按如下方式計算:
LED幀頻200Hz(5ms),5COM à 單COM的掃描時間TB = 1ms
TB = TSYS * 256* DISCOM (系統(tǒng)時鐘RC 24MHz) à DISCOM = 94 (5EH)
注:TSYS為系統(tǒng)時鐘周期;DISCOM為COM掃描寬度控制寄存器。
LED模塊配置及數(shù)據(jù)刷新流程如下:
a.配置好LED模塊各個寄存器參數(shù)(工作模式、COM寬度、死區(qū)寬度、COM/SEG引腳)。
b. 寫入COM周期內(nèi)的SEG波形數(shù)據(jù)(即LED RAM數(shù)據(jù));
c. 開啟LED模塊(在開啟LED模塊前,可根據(jù)需求選擇是否使能LED 中斷);
d. LED掃描過程中,根據(jù)實際需求對顯示數(shù)據(jù)(LED RAM)進行刷新。
2、模式2:調(diào)光LED模式
當LED驅(qū)動器工作在調(diào)光LED模式時,每一個LEDRAM byte控制正在掃描的COM周期內(nèi)SEG的占空比;該占空比總共可以256檔可選;當LEDRAM byte為0xff時,SEG輸出最大占空比,當LEDRAM byte為0x00時,SEG輸出最小占空比;當LEDRAM byte為0x00~0xff中間值時,SEG輸出 相對應的占空比;
在Mode2模式下,LED COM中斷使能的情況下,LED模塊使能后會立刻開始顯示第一個COM的數(shù)據(jù)(亮度),同時產(chǎn)生一個COM中斷。因此,在開啟LED 功能前,必須設(shè)置好第一個COM周期內(nèi)的SEG數(shù)據(jù);在啟動LED功能后,會立刻進入LED COM中斷,需在LED中斷中改寫第二個COM周期的SEG數(shù)據(jù)SEGXduty(X=0~16)。如果不修改,則第二個COM會顯示上個COM周期的波形。以此類推,到一幀(LEDIF=1)結(jié)束。一幀最后一個COM中斷來臨時,填寫下一幀的第2個COM的SEG 的波形。
下面給出Mode2下,LED配置方法及其RAM的刷新流程。以需要顯示的LED幀頻200Hz(5ms)為例,當LED為5 COM且系統(tǒng)時鐘為RC 24MHz 時,
COM掃描掃描寬度控制寄存器配置值按如下方式計算:
LED幀頻200Hz(5ms),5COM à 單COM的掃描時間TB = 1ms
TB = TSYS * 256* DISCOM (系統(tǒng)時鐘RC 24MHz) à DISCOM = 94 (5EH)
注:TSYS為系統(tǒng)時鐘周期;DISCOM為COM掃描寬度控制寄存器。
LED模塊配置及數(shù)據(jù)刷新流程如下:
a.配置好LED模塊各個寄存器參數(shù)(工作模式、中斷允許位、COM寬度、死區(qū)寬度、COM/SEG引腳)。
b. 寫入第1個COM周期的SEG波形數(shù)據(jù)(LED RAM);
c. 使能LED COM、中斷允許位及總中斷允許位后,開啟LED模塊;(與a中所配置的中斷允許位不是一個)
d. 開啟LED模塊后會立刻進入COM中斷程序,在COM中斷中寫入COM2周期的SEG波形數(shù)據(jù);清除中斷標志位。
e. 等待下一個COM中斷來臨時(COM1中斷),寫入COM3周期的SEG波形數(shù)據(jù);
f. 重復步驟e,在COM n 中斷程序中,配置COMn+2周期的SEG波形數(shù)據(jù);
g. 在1幀中的倒數(shù)第二個COM中斷程序中寫入下一幀的COM1周期的SEG波形數(shù)據(jù)。
審核編輯:湯梓紅
?
評論