我这篇文章主要讲述i.mx6 平台下 采用DE模式的lvds液晶屏的驱动调试,

阅读该文章之前请先阅读如下两篇我转载的文章,这两篇文章是理解我这篇文章的基础知识。

1、        lcd fb参数如何计算:
http://blog.csdn.net/liuhuahan/article/details/43447657

2、        camera_lcd之DE和HV模式区别
http://blog.csdn.net/liuhuahan/article/details/43489269

详细阅读并理解这两篇文章之后,就会对液晶屏显示的关键结构体的各个参数有一个详细的了解。

Linux内核的amba lcd控制器使用clcd_panel结构体表示一个LCD屏的硬件参数:

/* include/linux/fb.h */

struct fb_videomode {
     const char*name;     /* optional */
     u32refresh;          /* optional */
     u32 xres;
     u32 yres;
     u32 pixclock;
     u32 left_margin;
     u32 right_margin;
     u32 upper_margin;
     u32 lower_margin;
     u32 hsync_len;
     u32 vsync_len;
     u32 sync;
     u32 vmode;
     u32 flag;
};

在i.mx6中,关于lvds液晶屏的这个结构体参数所属文件为:driver/video/mxc/ldb.c

有这幅图可以知道结构体struct  fb_videomode各个元素所对应的具体含义,如果液晶屏采用行场(HV)模式的,根据液晶屏数据手册可以很容易的把这个结构体中各个元素的数值填写进去,但是如果液晶屏是采用DE模式的话,液晶屏数据手册上提供的参数就不好和结构体中各个参数对应了。现在我就来说一下DE模式下的液晶屏如何把手册中提供的数据与该结构体中各元素的值进行对应。

先说我用的液晶屏是EJ070NA-01F,手册中该屏幕的参数如下:

有该数据列表可知(其后所述均采用标称值),该屏幕分辨率为1024x600,时钟频率为51.2MHz,由此可知像素时钟周期(单位皮秒)为14065。但是其他数据就和结构体里的元素对应不上了,有以上数据手册可以得知,其一行1344个像素点,空白点是320个,即其扫描一行在行首会有320个无效像素点。根据手册又可知,其扫描一场即扫描一屏有35个空白行,

这里边没有和结构体fb_videomode个元素对应的值啊,这该怎么填呢,其实图1所示的是一个屏幕中与各元素对应的值,但实际上屏幕上显示的图像是一屏一屏连续的,你可以把两个屏幕即把两个图1左右并排放置,如下图所示:

看两个图片之间,看出来了吧,即right_margin + hsync_len + left_margin = 一行总的空白数,在该款屏幕中这个和的值为320,

再把这两个图片上下拼起来看:

再看两个图片中间无效区间,即upper_margin + lower_margin + hsync_len = 一场总空白行,在该款屏幕中,这个和的值为35。

之后就可以随意分配结构体fb_videomode中的各元素的值,只要满足以上的两个等式就可以了。

在看我这款屏幕在实际中设置的值如下:

static structfb_videomode ldb_modedb[] = {

{

"LDB-WXGA", 60, 1280, 800, 14065,

40,40,

10,3,

80,10,

0,

FB_VMODE_NONINTERLACED,

FB_MODE_IS_DETAILED,},

{

"LDB-XGA",60, 1024, 600, 19531,

220, 40,

20, 5,

60, 10,

0,

FB_VMODE_NONINTERLACED,

FB_MODE_IS_DETAILED,},

}

红色部分即为我这款屏幕的参数值,看是不是满足上述两个等式,我也随意调换了几次其中的参数值,发现只有满足我之前所说的两个等式就可以正常显示。

当然这也只是我的一家之言,我其实对Linux的显示这部分内容了解的也不深,只是因为项目需要,需要调试液晶屏驱动,我也就对着了解了一点这部分的内容,可能有些地方说的不一定对,写出来仅供大家参考吧。

i.mx6 lvds接口的DE模式液晶屏驱动调试相关推荐

  1. 液晶屏 -- 驱动板 -- 屏线 -- 高压条 -- LVDS接口知识

    1.液晶屏 先说液晶屏,只要不是太特殊的笔记本,绝大多数都是LVDS接口的,极少是TTL的,这个看液晶屏的针脚可以大致判断出来(注意是看液晶屏上的接口,不是已经引出的屏线),LVDS的一般是14.20 ...

  2. TFT_LCD液晶屏驱动设计与验证

    TFT_LCD液晶屏驱动设计与验证 注:在本实验工程中,输出信号中包含 HV 同步模式下需要的行.场同步信号(hsync. vsync)和 DE 同步模式下的 tft_de 信号,各信号正确输出.读者 ...

  3. LCD 液晶屏驱动详解

    LCD液晶屏驱动详解 开发环境 开发板:JZ2440V3 CPU:samsunS3C2440 内核:Linux3.4.2 编译工具:arm-linux-gcc 4.3.2 LCD:4.3存液晶屏AT0 ...

  4. 怎么点亮段码屏_段码LCD液晶屏驱动方法

    TFT 液晶屏: http://www.hzjingxian.com 段码 LCD 液晶屏驱动方法 段码 LCD 液晶屏驱动方法 首先,不要以为用单片机来驱动就以为段码屏是直流驱动的,其实,段码屏是交 ...

  5. 液晶屏驱动 Realtek2660H方案demo有电路板,电路图源码#Realtek2660H方案

    #Realtek2660H方案demo有电路板,电路图源码#Realtek2660H方案 有电路板,电路图,源码! 有兴趣从事液晶屏驱动的人可入手!走不错的学习资料及平台!无电子开发经验的人慎入!有r ...

  6. 段码液晶屏驱动IC你知道怎么选吗?

    段码液晶屏因其简易便捷的动态显示,灵便的反应速率,不用人为因素的长期的实际操作而遭受众多客户的应用.那麼,段码液晶屏的驱动IC该如何选择就由液晶屏生产厂家来给你详细介绍. ​​​​​ 段码液晶屏的驱动 ...

  7. 驱动lvds双8位时钟_烧写液晶屏驱动软件识别

    很多朋友,买了液晶编程器以后,想烧写驱动板的数据,但是确不知道应烧写哪一个数据才 是对应的自已需要驱动的液晶屏;下面简单说一下数据的识别方法:老师傅可忽略. 例子: 首先根据你的液晶屏型号来选择用什么 ...

  8. 基于STM32F103ZET6主控平台实现(SPI接口)OLED液晶屏驱动

    一个热爱代码的工程师,唯有凭借双手不断敲打,才可以快速提升实力! 本文谨以记录,日后相忘时再作复习,代码没有贵贱,既来之则安之. OLED液晶屏产品图和效果图 由上图我们知道:OLED液晶屏分别有GN ...

  9. LCD液晶屏驱动详解

    开发环境: 开发板:JZ2440V3 CPU:samsunS3C2440 内核:Linux3.4.2 编译工具:arm-linux-gcc 4.3.2 LCD:4.3存液晶屏AT043TN24 参考文 ...

最新文章

  1. 086.冒泡排序的缺点及解决方案
  2. 【Python-ML】神经网络-多层感知器增加梯度检验
  3. 贪心算法之——会场安排(nyoj14)
  4. 基于glibc的程序在android上的移植
  5. python numpy中sum()时出现负值
  6. 小学奥数_7649 我家的门牌号
  7. 网易游戏java_2019秋招|网易游戏一面面经(Java开发)
  8. 转:Deep learning系列(十五)有监督和无监督训练
  9. 有这几个编程利器网站,再也不愁学习
  10. Spring-MVC的配置文件及路径问题
  11. angular要多久学会_成为优秀Angular开发者所需要学习的19件事
  12. linux/unix编程手册-6_10
  13. android 内存泄漏分析工具,Android内存泄漏终极解决篇(上)
  14. php---header函数的简介
  15. Linux下rpm、yum和源码三种安装方式详细介绍
  16. Weblogic安装部署步骤
  17. 逆发动机模型_simulink
  18. 免费WiFi上网软件是什么?怎么用?
  19. 平均增长率不用计算机,官方数据:平均增长率计算公式如何使用excel计算平均增长率...
  20. 跳转QQ群android代码,android 怎么跳转直接到qq群

热门文章

  1. 技术能力发展的布朗运动
  2. linux运行雷神之锤,Ubuntu下多人射击类游戏 Quake Live 雷神之锤
  3. 五家共井 穷举法_第5讲地图着色问题.ppt
  4. Socket与TCP状态
  5. 《程序员面试金典(第6版)》面试题 08.14. 布尔运算(动态规划,分治,递归,难度hard++)
  6. mysql squence分布式,xsequence分布式序列号生成组件1.0版本终于发布了
  7. 一“站”成名 | 盘点全球域名收购经典案例
  8. SpringBoot + Spring Cloud +Vue 管理系统后台搭建(七、业务代码通用CURD实现)
  9. 美颜sdk磨皮算法代码解析
  10. 中文域名,手机号,网址收藏夹