关于LCD驱动,RGB颜色对照表的问题

咕唧咕唧shuboLK 2011-12-02 08:45:54
LCD 驱动中,在设置好RGB颜色对照表后,它是怎么工作的,比如应用层传来每像素的颜色数据,这些数据是如何查表输出的?
我有两个理解:
1,LCD控制器会根据从FIFO中得到的数据,然后去色板上去找相应的值输出.这个过程是硬件来完成的。(这个想法还有一个疑点,我用的片子是2440,在每像素8bit的模式下,R G B各需要256个单元存放各自的色表,datesheet上说是从0x4d000400这个地址开始来存放色表的,并且驱动确实也这么做了
val = (red >> 0) & 0xf800;
val |= (green >> 5) & 0x07e0;
val |= (blue >> 11) & 0x001f;

writel(val, regs + S3C2410_TFTPAL(regno));
但是后面schedule_palette_update(fbi, regno, val);驱动又将色表保存在pal[regno] 这个数组里这又是为什么呢?)

2,应用层,我们通过ioctl()函数获得色表,然后根据色表值将每像素颜色数据传到驱动层,而后通过硬件给lcd。

不知道我上面哪个理解是正确的,请大家赐教。
...全文
1000 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
结贴啦
  • 打赏
  • 举报
回复
第一个理解是对的,开始主要是被那个数组迷惑了,分不清调色盘的工作到底是软件实现还是硬件,不过最后在驱动里找到了 。这样就明了了,谢谢楼上两位。我驱动看的不够仔细。

过去回1张贴就气喘吁吁,现在用了《Csdn收音机》,一口气回5张贴不费劲!
Wenxy1 2011-12-04
  • 打赏
  • 举报
回复
datasheet上应该有说明呀,要么是LCD控制器部分,要么是LCD部分。
内容概要:本文档为ST7701SG显示驱动芯片的技术规格说明书(Datasheet),详细介绍了该芯片的功能特性、引脚配置、电气参数、接口协议及控制命令集。文档涵盖了芯片的电源管理、MIPI-DSI与RGB接口时序、灰阶电压生成、伽马校正机制、睡眠模式控制以及各类操作指令(如显示开/关、部分显示、休眠进出等)的具体定义与使用条件。同时提供了详细的寄存器地址映射、数据包结构(短包/长包)、通信流程及时序图,适用于LCD显示屏的驱动设计与系统集成。; 适合人群:从事嵌入式显示系统开发的硬件工程师、驱动开发人员及IC应用工程师,具备一定的电子电路和通信协议基础;适用于中高级研发技术人员在产品设计中进行显示模块选型与调试。; 使用场景及目标:①用于设计基于ST7701SG驱动IC的液晶显示模组;②实现MIPI或RGB接口下的图像显示控制;③优化功耗管理(如睡眠模式切换);④完成伽马校正、亮度调节、色彩增强等功能配置;⑤支持生产测试与故障诊断(如读取ID、错误计数)。; 阅读建议:本资料技术性强,建议结合实际硬件平台对照查阅,重点关注“命令表”、“电气特性”和“接口时序”章节,并配合示波器抓取信号验证通信时序,确保正确实现初始化序列与运行控制。

4,469

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧