MTK lcd背光控制软件设计
MTK软件培训课程(三)MTK驱动架构分析精品PPT课件
GDI和pixtel_UI的关系
GDI的实现
使用GDI_HANDLE,gdi_handle来操作 GDI对象,GDI的对象可以是layer,gif, jpeg等。 GDI函数返回一个GDI_RESULT GDI函数使用互斥来保护,进入GDI函数 时调用GDI_ENTER_CRITICAL_SECTION()退 出函数时调用GDI_EXIT_CRITICAL_SECTION()
Media Task线程从med_create开始创建,其实 med_create函数只是将入口地址传递给库里的 函数,由里面的函数来创建线程。
Med_create中传入了以下的函数:
med_task_main,
/* 线程入口,消息泵 */
med_init,/*源自初始化 ,指定空间分配*/NULL,
设置当前活动模块,通过stack_set_active_module_id 分发消息,通过消息号,找到对应的消息处理函数,
使用med_main函数。程序里面有很大的一个消息索 引 释放返回消息数据内存区域,free_ilm
Media Task消息
从med_maincam_main相应的消息处 理函数,这时从MDI发过来的一个消息 才被识别,并进入相应的消息处理函数。 这时,我们回过头来再来看我们前面在 MDI章节所分析的Preview实现的例子, 会更清晰一些。 原来的例子:Preview实现
Media Task
Media Task模块分成4个部分:
Camera Audio Image Video
Media Task
Media Task模块有以下的作用:
基于MTK65xx平台lcm和背光驱动的编写
基于MTK65xx平台lcm和背光驱动的编写一、与LCD驱动相关的主要文件路径\mediatek\platform\mt6573\uboot\mt6573_disp_drv.c\mediatek\platform\mt6573\uboot\mt6573_disp_drv_dpi.c\mediatek\platform\mt6573\uboot \mt6573_disp_drv_dbi.c\mediatek\platform\mt6573\uboot \mt6573_dpi_drv.c\mediatek\platform\mt6573\uboot \mt6573_dsi_drv.c\mediatek\platform\mt6573\uboot \mt6573_lcd_drv.c\mediatek\source\kernel\drivers\video\mtkfb.c\mediatek\source\kernel\drivers\video\disp_drv.c\mediatek\source\kernel\drivers\video\disp_drv_dpi.c\mediatek\source\kernel\drivers\video\disp_drv_dbi.c\mediatek\platform\mt6573\kernel\drivers\video\lcd_drv.c\mediatek\platform\mt6573\kernel\drivers\video\dpi_drv.c\mediatek\platform\mt6573\kernel\drivers\video\dsi_drv.c\mediatek\custom\common\kernel\lcm\LCM_NAME\LCM_NAME.c\mediatek\platform\mt6573\uboot \mt6573_pwm.c\mediatek\platform\mt6573\uboot \mt65xx_leds.c\mediatek\source\kernel\drivers\leds\leds.c\mediatek\custom\ginwave73_gb\kernel\leds\mt65xx\cust_leds.c二、怎样新建一个LCD驱动LCD模组主要包括LCD显示屏和驱动IC。
毕业论文设计基于MTK平台移动终端应用层软件的设计与实现
毕业论文设计基于M T K 平台移动终端应用层软件的设计与实现Newly compiled on November 23, 2020题(中、英文)作者姓代分学密U D 编工程领摘要目前,手机已成为最广范围内使用的便携式电话终端。
很多国家也成功地将本土品牌手机推向了国际市场。
在手机的研发过程中,人机交互接口(MMI)给进行移动通信的人与手机提供了交往的界面,它的设计优劣直接影响了手机销售市场的占有率,本文对人机界面的设计与实现进行了研究和探讨。
本文首先介绍了手机发展现状和课题选题由来,阐明了课题的现实意义和主要任务。
基于手机结构和嵌入式操作系统介绍了本项目的软件开发平台——MTK平台,并详细分析了该平台MMI层软件结构。
其中以手机应用层开发中的典型模块——通讯录应用为例,先进行了系统需求分析和方案设计。
然后具体实现了模块的各功能与所有界面,并完成了应用间交互的相关功能,后期根据编写的测试用例进行了黑盒测试。
最终,样机通过了软、硬件测试,验证了其设计的正确性和可行性,并成功投入市场。
关键字:手机人机交互接口(MMI) MTK黑盒测试AbstractNowadays, handset has become a cellular phone terminal in the most widely used field. A great many countries succeeded in designing various handsets labelled by their own brand in international market. The Man-Machine-Interface(MMI) provides such an interface that brings the convenience to both human and handset in the handset projects. And the advantages or not of design could make an important influence on the market share of mobile terminal products. The thesis makes the related R&D to design and achieve a friendly interface.The thesis first introduces the present situation and background of handset, and clarifies the significance of the topic and main task. On the basis of the architecture of handset and the embedded system, introduces the software development platform of this project, MTK platform, and the software architecture of MMI. Taking a typical application, phonebook as an example, makes the requirement analysis and practical plan design firstly. Then goes deep into the detailed realization of function and interface, and fulfills the communication between related applications. In the later period, according to test case, finishes the Black-box Testing and debugging. Finally, passes all the testing of software and hardware, which verifies the validity and feasibility of the early design, finished products have been poured into market. Keyword: Handset Man-Machine-Interface(MMI) MTKBlack-box Testing目录第一章绪论手机发展现状移动通信的发展从1876年贝尔发明电话以来,经历了长达一个多世纪的发展,电话通讯服务已走进了千家万户,成为国家经济建设、社会生活和人们交流信息所不可缺少的重要工具。
MTK lcd背光控制软件设计教程文件
M T K l c d背光控制软
件设计
lcm背光控制主要有两个引脚:使能脚EN和亮度控制引脚VFB。
使能脚用来控制背光的使能与否,比如这里是1为enable,0为disable;亮度控制引脚则是用来接PWM输出,通过PWM的占空比来控制背光亮度,这里是低为亮,高为灭。
所以在这两个引脚的连接和配置上要保证EN连接至gpio上,而VFB则连接至BB的PWM输出口,然后通过dct工具将上述引脚配置成对应的mode。
配置uboot
mediatek/custom/bbk75_ics/uboot/cust_leds.c
在 cust_led_list数组中更改 lcd-backlight的配置为pwm:
在 mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:
以下两个函数同步更改:
配置kernel
mediatek/custom/bbk75_ics/kernel/leds/mt65xx/cust_ leds.c
将背光led的控制方式更改为pwm:
和uboot一样,在 mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:
如果uboot中将VFB配置成了gpio并且输出低使背光一直保持全亮,在进入kernel后通过代码再将其设置为pwm模式,这理应是ok的;但现实就是不行,这样会导致背光不能调节(不过由于没有量波形,故不知是有波形输出还是仍一直输出低电平),就在这里耗时较长,所以关注一下这点。
附修改记录:。
MTK lcd背光控制软件设计
lcm背光控制主要有两个引脚:使能脚EN和亮度控制引脚VFB。
使能脚用来控制背光的使能与否,比如这里是1为enable,0为disable;亮度控制引脚则是用来接PWM输出,通过PWM 的占空比来控制背光亮度,这里是低为亮,高为灭。
所以在这两个引脚的连接和配置上要保证EN连接至gpio上,而VFB则连接至BB的PWM输出口,然后通过dct工具将上述引脚配置成对应的mode。
配置ubootmediatek/custom/bbk75_ics/uboot/cust_leds.c在cust_led_list数组中更改lcd-backlight的配置为pwm:在mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:以下两个函数同步更改:配置kernelmediatek/custom/bbk75_ics/kernel/leds/mt65xx/cust_ leds.c将背光led的控制方式更改为pwm:和uboot一样,在mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:如果uboot中将VFB配置成了gpio并且输出低使背光一直保持全亮,在进入kernel后通过代码再将其设置为pwm模式,这理应是ok的;但现实就是不行,这样会导致背光不能调节(不过由于没有量波形,故不知是有波形输出还是仍一直输出低电平),就在这里耗时较长,所以关注一下这点。
附修改记录:Modified :/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/custom/bbk15_td_ics/kernel/leds/mt65xx/cu st_leds.cModified :/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/custom/bbk15_td_ics/uboot/cust_leds.c Modified :/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/platform/mt6575/uboot/mt65xx_leds.c Modified :/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/source/kernel/drivers/leds/leds.c。
MTK平台软件架构简介7259
typedef struct {
kal_char
*comp_name_ptr;
kal_char
*comp_qname_ptr;
kal_uint32
comp_priority;
kal_uint16
comp_stack_size;
kal_uint8
comp_ext_qsize;
DATA 电路交换数据服务,包括以下子模块
① FAX: Group 3 Facsimile ② TDT: Transparent circuit switching data ③ L2R: Layer 2 relay protocol for non-transparent circuit
switching data ④ RLP: Radio link protocol for non-transparent circuit switching
⑨ SMSAL: Short message service application layer
⑩ TCM: Terminal context management
NVRAM Nor-volatile RAM, 是MMI到Flash的一个适配 层, 保存一些默认设置
SIM Subscriber identity module. Handle SIM behavior as ETSI 11.11 description
Data Drivers
TDT FC
SMS
SM
MM/GMM
RRM
RMPC
LAPDM
MPAL
SNDCP
LLC RR
RLC MAC
L1 KAL OS adaptation
Nucleus OS
ANDROID LCD背光从上层到底层调用全过程
}
}
在这里设置背光又调用了 setLightLocked 此函数,此函数又调用了 setLight_native 这个函数,这个本地函数 就是所说的 JNI 接口函数了,上层 app 就通过 JNI 调 用底层驱动的接口。此 native 函数的代码路径为: frameworks\base\services\jni\ com_android_server_LightsService.cpp static void setLight_native(JNIEnv *env, jobject clazz, int ptr,
// Don't let applications turn the screen all the way off Brightness=Math.max(brightness,Power.BRIGHTNESS_DIM); mLcdLight.setBrightness(brightness);
mKeyboardLight.setBrightness(mKeyboardVisible ?brightness :0); mButtonLight.setBrightness(brightness); long identity = Binder.clearCallingIdentity();
}
IPowerManager 类中有 setbacklightbrightness 实现函数。
IPowerManager 类 的 实 现 是 在 此 目 录 下 :
frameworks\base\services\java\com\android\server\PowerManagerServic
e.java
devices->lights[light]->set_light(devices->lights[light], &state); } 再往下就是 HAL 层了 代码路径为:
lcd背光及对比度调节应用方案
1、此应用电路以DC/DC电源模块给GM0128驱动芯片的背光电源及对比度调节供电为例,LCD芯片的工作电压为5V,LCD背光电源及对比度调节采用+24V供电及调节,以达到给LCD液晶显示供电及调节亮度的目的;
2、采用DC-DC电源模块可有效为LCD液晶模块提供提供一个稳定的、可靠的工作电压。
3、图中的分压电阻及电位器R1、R2、R3可根据不同液晶屏的实际需要而进行选择,以使显示屏达到最适合人眼的视觉效果。
二.DC-DC电源模块选型表
+24V应用方案
系统
电源型号封装型号封装
5V B0524LS-1W
B0524S-1W
ADP0524A
普通SIP
超小型SIP
普通SIP
B0524LD-1W
B0524D-1W
普通DIP
超小型DIP
说明:1)Bxxxxx-1W:为定电压隔离非稳压单输出系列产品;
2)ADP0524A:宽电压输入(5V-12V),非隔离,-24V可调或稳压输出; SIP封装
三.注意事项:
z以上方案是以LCD芯片不自带背光电源而做出的应用电路,如LCD芯片有自带背光电源,即只需要选ADP05C24A直接进行对比调节即可,为了进一步降低系统功耗,请尽量选择低功耗的元器件。
z对于定压系列产品为了保证电源模块工作的长期可靠性,应尽可能使用到模块工作在额定功率的10%以上,否则应选用功率较小的产品,如0.5W或0.25W;。
背光驱动控制系统的智能化设计与开发
背光驱动控制系统的智能化设计与开发背景介绍:在现代电子产品中,背光模块被广泛应用于液晶显示屏幕中,用于提供背光照明。
背光驱动控制系统是控制背光的亮度和色温的关键组件之一。
随着科技的不断进步,人们对电子产品的要求也越来越高,因此,对背光驱动控制系统进行智能化设计与开发已成为一个热门的研究方向。
一、背光驱动控制系统的基本原理背光驱动控制系统的基本原理是根据输入的信号来控制背光模块的亮度和色温。
一般而言,背光驱动控制系统由以下几个主要组成部分构成:1. 输入接口:负责接受外部信号输入,如电压、PWM信号等。
2. 亮度控制模块:根据输入信号来调节背光模块的亮度。
3. 色温控制模块:根据输入信号来调节背光模块的色温。
4. 电源管理模块:为背光模块提供稳定的电源。
二、背光驱动控制系统的智能化设计随着人工智能技术的发展,背光驱动控制系统的智能化设计成为了可能。
智能化设计可以通过以下几个方面来实现:1. 信号处理算法:利用人工智能算法,对输入信号进行处理,提取出信号中的有用信息,并根据这些信息来智能调节背光的亮度和色温。
2. 传感器技术:结合传感器技术,实时监测环境光强度和色温等参数,并根据监测结果智能调节背光的亮度和色温,以达到最佳显示效果。
3. 学习能力:通过机器学习算法,背光驱动控制系统可以学习用户的使用习惯和偏好,从而自动调节背光的亮度和色温,提供个性化的显示效果。
4. 自适应控制:智能化设计还可以实现背光驱动控制系统的自适应控制,根据环境的变化,自动调节背光的亮度和色温,以提供更加舒适的阅读体验。
三、背光驱动控制系统的开发在开发背光驱动控制系统时,需要进行以下几个关键步骤:1. 系统需求分析:对背光驱动控制系统的要求进行详细分析,确定系统的功能和性能指标。
2. 硬件设计:设计背光驱动控制系统的硬件电路,包括输入接口、亮度控制模块、色温控制模块和电源管理模块等。
3. 软件设计:编写背光驱动控制系统的软件程序,实现信号处理算法、传感器技术和自适应控制等智能化功能。
针对MTK平台下-LCD调试步骤以及常见的一些问题
SET_LCD_ROI_CTRL_NUMBER_OF_CMD(n);\
ENABLE_LCD_ROI_CTRL_CMD_FIRST;\
SET_LCD_ROI_WINDOW_SIZE(0,0);\
START_LCD_TRANSFER;\
for(i=0;i<50;i++){};\
1核对lcd模组的pin脚定义与手机lcd接口pin当我们拿到一个项目的新屏调试时首先要拿到lcd组的规格书和lcdic的规格书再去核对规格书上lcd模组的pin脚定义与我们手机原理图上的lcdpin脚定义是否相符若不符就不用再往下做了
一、LCD调试步骤(针对MTK平台):
1、核对LCD模组的PIN脚定义与手机LCD接口PIN定义是否一致
{\
SET_LCD_CMD_PARAMETER(0,LCD_DATA,((_data&0xFF00)>>8));\
SET_LCD_CMD_PARAMETER(1,LCD_DATA,(_data&0x00FF));\
LCD_SEND_DMA_CMD(2);\
}
#elif (defined(MAIN_LCD_9BIT_MODE))//定义9位
{\
SET_LCD_CMD_PARAMETER(0,LCD_CMD,((_data & 0xFF00)>>8));\
SET_LCD_CMD_PARAMETER(1,LCD_CMD,(_data & 0x00FF));\
LCD_SEND_DMA_CMD(2);\
}\
#define LCD_DataWrite_CMD(_data) \
基于嵌入式Linux的LCD背光调节及驱动的实现
基于嵌入式Linux的LCD背光调节及驱动的实现摘要:为了减少手持式设备的功耗并满足lcd背光调节的应用需求,在嵌入式linux下,设计了一种用按键来调节输出方波占空比以实现背光调节的解决方案。
该方案采用s3c2440的定时器产生pwm 信号,系统根据lcd使用情况和外界光线强度的变化,用传入的按键触发次数来控制定时器输出pwm信号的占空比,通过软件实现背光状态的实时调节,并完成了背光驱动程序的设计。
测试结果表明,该方法可以降低设备的功耗并能满足背光调节的要求,具有良好的稳定性及通用性。
关键词:嵌入式系统;pwm;按键;背光调节引言在手持式设备中,液晶显示屏的使用越来越广泛。
由于lcd自身是不能发光的,它需要一个强劲的光源来给它提供背光,以便清晰地显示信息。
这样的光源是非常耗电的,通常液晶显示屏的功耗常常占到系统总功耗的60%以上[1]。
以群创的7寸屏为例,通常背光灯的功耗为2.5 w,而lcd的功耗只有0.825 w[2]。
由此可见,背光光源的功耗在整个电源中的比重是相当高的。
如果系统在不用显示屏时,也全功率的运行,系统的电池能量将很快被耗光。
所以,调节lcd的背光源,降低系统在不用显示屏时的能耗是十分必要的工作。
另外,由于手持式设备工作环境的变化,也需要根据外界光线强度的变化,对背光的亮度做出相应的调节,以适合人眼观看的舒适度。
基于上述2种原因,考虑到设备功耗的降低以及使用的便利性,本文在嵌入式linux下,设计了一种使用s3c2440的定时器产生pwm (pulse width modulation)信号,根据设备实际使用需要,和外界光线强度的变化用按键调节lcd背光亮度的解决方案。
1基于pwm的背光调节原理在中小尺寸液晶显示屏中,一般采用白光led作为显示屏的背光光源。
pwm即脉宽调制,pwm调光就是利用人眼的视觉暂停原理,以一定的频率和占空比的方波来控制led的导通。
led正向电流在零电流到额定工作电流之间来回切换,通过高速开关背光,周期循环地提供不同占空比的方波,实现亮度的调节。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
lcm背光控制主要有两个引脚:使能脚EN和亮度控制引脚VFB。
使能脚用来控制背光的使能与否,比如这里是1为enable,0为disable;亮度控制引脚则是用来接PWM输出,通过PWM 的占空比来控制背光亮度,这里是低为亮,高为灭。
所以在这两个引脚的连接和配置上要保证EN连接至gpio上,而VFB则连接至BB的PWM输出口,然后通过dct工具将上述引脚配置成对应的mode。
配置uboot
mediatek/custom/bbk75_ics/uboot/cust_leds.c
在cust_led_list数组中更改lcd-backlight的配置为pwm:
在mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:
以下两个函数同步更改:
配置kernel
mediatek/custom/bbk75_ics/kernel/leds/mt65xx/cust_ leds.c
将背光led的控制方式更改为pwm:
和uboot一样,在mt65xx_led_set_cust中添加对lcm使能脚的控制,以更好地对屏幕的亮灭进行控制:
如果uboot中将VFB配置成了gpio并且输出低使背光一直保持全亮,在进入kernel后通过代码再将其设置为pwm模式,这理应是ok的;但现实就是不行,这样会导致背光不能调节(不
过由于没有量波形,故不知是有波形输出还是仍一直输出低电平),就在这里耗时较长,所以关注一下这点。
附修改记录:
Modified :
/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/custom/bbk15_td_ics/kernel/leds/mt65xx/cu st_leds.c
Modified :
/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/custom/bbk15_td_ics/uboot/cust_leds.c Modified :
/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/platform/mt6575/uboot/mt65xx_leds.c Modified :
/trunk/ALPS.ICS.MP.V1_T_20120405/mediatek/source/kernel/drivers/leds/leds.c。