首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心理工论文电子通信
   在Linux下驱动STN彩色LCD      ★★★ 【字体: 】  
在Linux下驱动STN彩色LCD
收集整理:佚名    来源:本站整理  时间:2009-01-10 22:30:59   点击数:[]    

并将屏幕的缓冲区映射到用户空间;最后就可直接对屏幕缓冲区进行图片显示。

    嵌入式Linux操作系统对帧缓冲的初始化入口在fbmem.c中的如下定义:

static struct { const char *name; int (*init)(void);  int (*setup)(char*);} fb_drivers[ ]__initdata = {#ifdef CONFIG_FB_YOURCARD   { "driver_name", xxxfb_init, xxxfb_setup },#endif


    通过该入口可进入帧缓冲的初始化函数。下面是对整个帧缓冲的实现过程。

    首先,根据所选择的STN型LCD先初始化显示屏幕的分辨率(640×480)、每个像素的比特数(实际所选的LCD为12bpp,但在设计中可作为16bpp来设计。这是因SA1110的LCD控制器对两者处理方式相同而只有色彩深度的比例不同的缘故)和各种时序值。随后这些值将会被写入LCD控制器的控制寄存器LCCR0到LCCR3内,即完成对LCD控制器内一部分寄存器的配置。特殊的一点,因为所选的LCD是12bpp显示,所以rgbt色彩的深度比值应为4:4:4:0。

    其次对LCD进行显示缓冲区的分配。该过程由kmalloc函数实现动态分配一片连续的空间,需要分配的缓冲区大小为600K字节。缓冲区是在SDRAM中分配大容量的地址,存储器映射至SA1110内,其中上半屏起始地址保存到LCD控制器的寄存器DBAR1中,下半屏起始地址保存到DBAR2中。在此完全初始化一个fb_info结构,填充其中的各成员变量。之后进行中断处理请求和各种变量和调色板等的设置。然后注册驱动程序,通过调用register_framebuffer(&fb_info)实现将fb_info登记入内核。最后,启动GPIO9~2和LCD控制器。

    效果

    因为该设计将驱动作为内核的一部分,而不是模块加载的方式,所以需重新编译内核,并将新编译的Linux内核下载到开发板内。重新启动系统后,通过应用程序检测,可以使屏幕显示任意所需图片,表明了驱动LCD显示的设计已成功实现。

    在对嵌入式Linux系统进行驱动LCD的开发时,不仅涉及到对开发板的了解(特别是微处理器和外围接口),还要求熟练配置Linux内核、掌握Linux的整个系统启动过程和Linux下开发设备驱动程序过程,同时开发人员还需掌握所开发的LCD技术资料。本文具体的介绍驱动LCD过程中驱动帧缓冲的设计。该设计的实现使得此LCD可应用在嵌入式开发的多种领域,因此具有实用价值



上一页  [1] [2] 


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:32位ARM内核微处理器W90N740及其应用

  • 下一篇文章:嵌入式系统中的CACHE问题
  • 返回上一页】【打 印】【关闭窗口
    中查找“在Linux下驱动STN彩色LCD”更多相关内容 5VAR论文频道
    中查找“在Linux下驱动STN彩色LCD”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››嵌入式系统的通信规约管理平台设计...
  • ››一种基于七号信令的局间话单采集系...
  • ››对于变频器的制动技术分析
  • ››电子文件管理元数据宏观结构多维分...
  • ››浅论卫星电视接收机的常见故障的检...
  • ››信息时代网络用户信息检索焦虑的心...
  • ››论GIS在高校房产管理中的实际应用
  • ››关于电力通信发展战略的思考 金李莎...
  • ››2G、3G切换精细化优化分析思路探讨...
  • ››光纤自动化生产的需求与时机
  • ››在Linux下用Qt开发新一代DTS图形数...
  • ››在Linux下驱动STN彩色LCD
  • ››在Linux上做个家用(或办公室)网络
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .