MT6572平台加入呼吸燈功能 控制晶元簡介

2021-06-19 03:21:26 字數 1243 閱讀 7997

簡介:這裡我們使用了一片sn3112來控制led燈的亮滅,sn3112是一片12路led控制晶元。每路單獨256級亮度可控,cpu通過i2c介面對其進行程式設計控制。通過將sdb腳拉低或者軟體設定可關斷晶元,進入低功耗模式。

sn3112暫存器功能列表:

位址名稱

功能預設值

00h關斷暫存器

軟體關斷sn3112(0x00為關斷,0x01為開啟)

0x00

04h~0fh

pwm控制暫存器

儲存12路led燈的pwm亮度值

0x00

13hled控制暫存器1

儲存1~3路led開關狀態(bit3~5)

0x00

14hled控制暫存器2

儲存4~9路led開關狀態(bit0~5)

0x00

15hled控制暫存器3

儲存11~12路led開關狀態(bit0~2)

0x00

16h資料更新暫存器

更新各暫存器中的資料

xx17h

復位暫存器

重置各暫存器資料xx

led呼吸燈非線性修正

sn3112內部實現線性256級灰度pwm調光。由於人視覺對亮度的誤差,電流線性增加時,視覺上會感到呼吸燈開始時亮度變化快,然後進入飽和狀態。故在此使用32級亮度的伽馬補償資料:

c0c1

c2c3

c4c5

c6c701

24610

1318

c8c9

c10c11

c12c13

c14c15

2228

3339

4653

6169

c16c17

c18c19

c20c21

c22c23

7886

96106

116126

138149

c24c25

c26c27

c28c29

c30c31

161173

186199

212226

240255

其餘具體引數見晶元datasheet,另註:在晶元關斷模式時,所有暫存器保持原資料不變。

mt6572這邊,我採用的gpio模擬i2c通訊的方式與sn3112進行通訊,其中gpio102連線scl叫,gpio138連線sda腳,gpio141連線sdb即使能腳,在dct配置gpio引腳時要記得進行相關配置。

mtk 6572平台led指示燈 除錯

led充電指示燈除錯 相關檔案目錄 custom kernel leds mt65xx cust leds.c kernel drivers leds leds drv.c platform mt6572 kernel drivers leds leds.c static struct cust m...

MT6757晶元技術資料,MT6763平台案例分析

mt6757 mt6763 af case study 1 fail pos 關於af fail position 0時,推fail pos的說明 mt6757之前的平台,mt6750,mt6797,mt6580,mt6752等等 lens postion table 0 i4fail pos mt...

MT6735平台螢幕旋轉90度

lk 橫屏logo,順時針旋轉90度顯示修改 bootable bootloader lk project len6735 65u vo.mk boot logo wxganlmtk lcm physical rotation 90 framebuffer順時針旋轉90度的修改 device len...