您的位置:首页 > 其它

MT6571 使用PWM配置背光及频率计算

2016-07-15 16:46 447 查看

MT6571 使用PWM配置背光及频率计算

[DESCRIPTION]

MT6571 使用PWM配置背光及频率计算

[SOLUTION]

以GPIO52 pin为例:



5.11tp-2.png (14.14 KB, 下载次数: 0 )

下载附件  保存到相册

2016-5-11 10:25 上传

一、将GPIO52在DCT tool配置成PWM1,用于背光。

static struct cust_mt65xx_led cust_led_list[MT65XX_LED_TYPE_TOTAL] = {

{"red", MT65XX_LED_MODE_NONE, -1,{0}},

{"green", MT65XX_LED_MODE_NONE, -1,{0}},

{"blue", MT65XX_LED_MODE_NONE, -1,{0}},

{"jogball-backlight", MT65XX_LED_MODE_NONE, -1,{0}},

{"keyboard-backlight",MT65XX_LED_MODE_NONE, -1,{0}},

{"button-backlight", MT65XX_LED_MODE_NONE, -1,{0,0,0,0,0}},

{"lcd-backlight", MT65XX_LED_MODE_PWM, PWM1, {0,0,0,0,0}},

};

1. PWM config data结构体解析

clock_source: clock source frequency, can be 0/1

div: clock division, can be any value within 0~7 (i.e. 1/2^(div) = /1, /2,

/4, /8, /16, /32, /64, /128)

low_duration: only for BACKLIGHT_LEVEL_PWM_64_FIFO_MODE_SUPPORT

High_duration: only for BACKLIGHT_LEVEL_PWM_64_FIFO_MODE_SUPPORT

2. PWM频率计算:

If BACKLIGHT_LEVEL_PWM_MODE_CONFIG = BACKLIGHT_LEVEL_PWM_256_SUPPORT,

PWM freq. = clock source / 2^(div) / 256

If BACKLIGHT_LEVEL_PWM_MODE_CONFIG =

BACKLIGHT_LEVEL_PWM_64_FIFO_MODE_SUPPORT,

PWM freq. = clock source / 2^(div) /

[(High_duration+1)(Level')+(low_duration+1)(64 - Level')]

= clock source / 2^(div) / [(High_duration+1)*64] (when low_duration =

High_duration)

时钟源:

0: block clock/1625 = 26M/1625 = 16K (MT6571)

Mode0 Mode1 Mode2 Mode3

GPIO52 LPD8 PWM_BL PWM_A

1: block clock = 26M (MT6571)

Div: 0~7

例如, in MT6571, PWM_config = {1,1,0,0,0}

==> PWM freq. = 26M/2^1/256 = 50.78 KHz ( when

BACKLIGHT_LEVEL_PWM_256_SUPPORT )

==> PWM freq. = 26M/2^1/(0+1)*64 = 203.13 KHz ( when

BACKLIGHT_LEVEL_PWM_64_FIFO_MODE_SUPPORT )

波形图如下:



5.11tp-3.png (366.24 KB, 下载次数: 0 )

下载附件  保存到相册

2016-5-11 10:25 上传

二、将GPIO52在DCT Tool配置成PWM_BL.

static struct cust_mt65xx_led cust_led_list[MT65XX_LED_TYPE_TOTAL] = {

{"red", MT65XX_LED_MODE_NONE, -1,{0}},

{"green", MT65XX_LED_MODE_NONE, -1,{0}},

{"blue", MT65XX_LED_MODE_NONE, -1,{0}},

{"jogball-backlight", MT65XX_LED_MODE_NONE, -1,{0}},

{"keyboard-backlight",MT65XX_LED_MODE_NONE, -1,{0}},

{"button-backlight", MT65XX_LED_MODE_NONE, -1,{0,0,0,0,0}},

{"lcd-backlight", MT65XX_LED_MODE_CUST_BLS_PWM,

(int)disp_bls_set_backlight, {0,0,0,0,0}},

};

1. PWM config data结构体解析

clock_source: clock source frequency, can be 0/1/2/3

div: clock division, can be any value within 0~1023

low_duration: non-use

High_duration: non-use

pmic_pad: non-use

2. 频率计算

PWM freq.= clock source / (div + 1) /1024

Clock source:

0: 26 MHz

1: 104 MHz

Div: 0~1023

By default, clock_source = 0 and div = 0 => PWM freq. = 26 KHz

波形图如下:



5.11tp-4.png (362.82 KB, 下载次数: 0 )

下载附件  保存到相册

2016-5-11 10:25 上传

更加具体的信息请参考DCC文档:

MT6571_Backlight_Config_SOP
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MTK PWM MT6571 配置 频率