S3C2440A下彩色液晶显示器的设计.docx

上传人:王** 文档编号:1405140 上传时间:2024-07-06 格式:DOCX 页数:10 大小:142.81KB
下载 相关 举报
S3C2440A下彩色液晶显示器的设计.docx_第1页
第1页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第2页
第2页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第3页
第3页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第4页
第4页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第5页
第5页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第6页
第6页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第7页
第7页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第8页
第8页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第9页
第9页 / 共10页
S3C2440A下彩色液晶显示器的设计.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
资源描述

《S3C2440A下彩色液晶显示器的设计.docx》由会员分享,可在线阅读,更多相关《S3C2440A下彩色液晶显示器的设计.docx(10页珍藏版)》请在优知文库上搜索。

1、1.2时序和数据匹配电路由于S3C2440A的1.CD限捌器与1.CD屏1.Q035Q7DH01在数据格式及显示时序上无法印配,须饕选用一种时序限制IC或者用CP1.D(也就是通常所说的1.CD伴住;芯片)来对不同数据格式的数据接11进行映射-但CP1.D面积较大、成本较高,因而通常只在须要对电路进行收提配置的状况下才运用。木文时序限制IC选用爱普公司的1.Z9FC22该芯片专用于对TFT型QVGA屏幕(乔琳册别率320x240)的1.CD进行时序限制.这是一个18bit(R6G6B6)的限制器,由于本文采纳的是RGB56516位工作模式,所以将其怆入引脚RO和BO接地。时序和数据Pt配电路如

2、图2所示:3Vs三c国苣国Os3s三SSSS-2D231.Z9FC2251039工、J7_46上44TTDaxPP*TESTlVDlOTESTl0R5GNDOGOOGl0G20G30G40G5GNDVDDOWOBlOBOTJBT图2时序和做樵Kifc电路1.5显示系统整体结构框图显示系统整体结构框图如图5所示.图5显示系统结构框图21.inux下的*谖冲(framebuffer)设备1.inux下编写显示设备的夏动程序有两种方法:一种是把显示设备抽象成一般的字符设备,褒动铿序的写法和一般的字符设备胆动类似;其次种就是帧缓冲设备驱动程序的编写。由于第种方法不规范,而H.实现功能有限,故一般不提但

3、;而帧烦冲阴动程序比较简洁,也商沽实现,因而在嵌入式系统里得到了广泛应用.帕缓冲设生是一个供应显示内存和显示芯片寄存器从物理内存映射到进程地址空间中的谀备,是1.inUX为图形设的供应的一个抽象接口,它将显示设各抽望为帧缓冲区.帧缓冲允许上层应用程序在图形模式下干脆对显示缓冲区进行读写操作.这种操作是抽象的、统的.应用程序不必关切物理显存的位词、换页机制等等详细细微环节,帧线冲设备M干字符设符,采纳文件层-驱动层”的接口方式.1.lnux内核include/fnux/fb.h中定义了物缓冲设备的驱动层接口fb_info结构体,fbjnf。定义了当前工作的显示卡的状态和帧缓冲设茶的操作函数,它仅

4、对内核可见.文件fb.h中还定义了fb_var_screeninfo(显示卡可变特性,这些特初始化.然后调用这两个函数对其注册或注料.帧缓冲设备郭动层接I干脆对1.CD设备硬件进行操作,而fbmem.c可以记录和管理多个底层设备涵动,3显示系统帽冲胆动的耳3.1 定义1.CD限制器结构体前面已经说过,1.CD限制器的功能是传箱图像数据并产生相应的双洌信号来骗动1.CD显示器,第动程序须要依据当前详细显示硬件的特性,通过诜写系列的1.CD限制寄存器来完成设定显示器辨别率和显示数据的格式,设置限制信号时序,指定品示徵中区地址等,从而供应应显示设备合适的数据信号和限制信号,文中依据须要为S3C244

5、0A的1.CD限制器定义了一个专用结构体s3c2440fb_machnfo:structs3c2440fb_mach_lnfou_longPixclock;/-像素时钟频率*/u_charbpp;/映像求须要的bit数/u_shortxres;/*显示器行辨别率*/u_shortyres;/*显示据列辨别率*/u_charhsyncen;/*行同步信号的长度*/u_CharVSyncen;/*帧同步信号的长度*/u_charleft.marginj三从本行图象数据输出结束到卜一行的行同步信号起先之间的像本时钟数*/1.Charright_margin;/*从行同步信号结束到该行的图象数据起先输

6、出之间的像素时钟数*/u_charUPpejmargin;/,从本帧图象数据输出结束到下帧的帧同步信号起先之间的无效行数*/u_char。WeJmargin;/*从帧同步信号结束到该帧图象数据起先输出之间的无效行数*/u_charsync;structs3c2440fb_lcd_regreg;*S3C2440A1.CD限制寄存器结构体/;加动程序通过定义一个s3c2440fb_mach_info结构变址并给该变城赋值来完成1.CD限制器的初始化.3.2 编写结构体fb_info中fb_ops时应的成其函数对于本嵌入式系统的实现,须要下列5个函数:staticstructfbopss3c2440

7、fb_ops=wner=THIS.MODU1.E,THIS-MODU1.E宏用来防止眼动模块在运用状态下被卸载/fb_get_fix:s3c2440fb_get_fix,fbget_var:s3c2440fbget_var,fb_set_var:s3c2440fb_set_var,fb_get_cmap:s3c2440fb_get_cmap,fb_set_cmap:s3c2440fb_set_cmap,;结构体fb_ops(f.1.inux内核indude/linux/fb.h中定义.这些函数都是用来设诋和获得驱动层接口fbjnfo结构体中的成变量的,前文已提过当应用程序对设各文件进行i。Ct

8、l操作时会调用它们.对于fb_get_fix()和fb_get_var()应用程序传入的是fbjnfo中的结构变鼠fix和var,fb_set_var()函数则是对var变显进行设置,同样fb_geJCmaP()和fb_seJCmaP()则是对结构变Iitcmap内容进行读取和设置“在这5个函数中,fb_set_var()设置了显示设备的显示模式,是最JR要的一个函数,文中依据须要为当前显示便件定义一个C行结构体s3c2440fbMo,该结构体包括一个fb_iMo结构变量,及其它与所选1.CD硬件有关的全郃参数.因此结构体fb_ops中成员函数对结构体fb_info的操作4实上就是对结构体s3

9、c2440fbnfo的操作。该结构体定义如下:structs3c2440fbjnfo(structfbjnfofb;*fb-info结构变Ift*/signedintcurrcon;/当前终端限制台的序号*/u_intmax_xres;/屏尊能显示的最大行辨别率*/u_intmax_yres;/屏幕能显示的最大列辨别率*/structs3c2440fb_lcd_regreg;*S3C2440A1.CD限制寄存器*/*其他1.j1.CD硬件行关的参数*/);结构体fb_ops中的成G函数流程相像,木文在此仅给出函数s3c2440fb_SeJVar()的流程图和程序代玛.函数s3c2440fb_s

10、et_var()流程图如图6所示:staticstructfb_opss3c2440fb_ops=Owner:THIS_MODU1.E,/THIS_MODU1.E宏用来防止亮动模块在运用状态下被卸我/fb_get_fix:s3c2440fb_get_fix,fb_get_var:s3c2440fb_get_var,fb_set_var:s3c2440fb_set_var,fb_get_cmap:s3c2440fb_get_cmap,fb_set_cmap:s3c2440fb_set_cmap,;结构体fb_ops在1.inux内核indude/linux/fb.h中定义.这些函数都是用来设徨和

11、狭得驱动层接口fb_inf。结构体中的成员变Jlt的,前文已提过当应用程序对设法文件进行i。Ctl操作时会调用它们。对于fb_get_fix()和fb_get_var()应川程序传入的是fbjnfo中的结构变量fix和var,fb_set_var()ff数则是对Var变fft进行设义向样fb_geJCm叩。和fb_seJemaP。则是时结构变量CmaP内容进行读取和设置。在这5个函数中,fb_set_var()设过了显示设备的显示模儿是她咆要的一个函数.文中依据须要为当前显示硬件定义一个专有结构体s3c2440fbnf。,该结构体包括一个fbjnfo结构变量,及其它与所选1.CD硬件有关的全部

12、参数.因此结构体fb_ops中成员函数对结构体fb_info的操作驿实上就是对结构体s3c2440fbjnfo的操作,该结构体定义如下:structs3c2440fbjnfo(structfbjnfofb;*fb_info结构变fit*/signedintCUrrcon;*当前终端限制台的序号*/u_intmax_xres;/屏份健显示的大行辨别率*/u_intmax_yres;/屏窑能显示的她大列辨别率*/structs3c2440fb_lcd_regreg;*S3C2440A1.CD限制寄存器*/*其他与1.CD硬件有关的多教*/;结构体fb_ops中的成访函数流程相像,本文在此仅给出函数

13、s3c2440fb_Set_var()的流程图和程序代码,函数s3c2440fb_set_var()流程图加图6所示:图6函数s3c2440fb_set_var()流程图函数s3c2440fb_setvar()程序如卜:staticints3c2440fb_set_var(structfb_var_screeninfo*var,intconstructfb_info*info)structs3c2440fbjnfo*fbi=(structs3c2440fbjnfo*)info;*将显示模式读入结构体s3c2440fb_info*/structfb_var_screeninfo*dvar=get

14、_con_var(&fbi-fb,con);Interr;err=s3c2440fb_validate_var(var,fbi);*显示模式是否有效/if(err)*无效返回*/returnerr;dvar-red=fbi-rgbrgbidx-red;/*将显示参数笃入结构体fb_var_SereenInfO*/dvar-green=fbi-rgbrgbidx-green;dvar-blue=fbi-rgbrgbidx-blue;dvar-transp=fbi-rgbrgbid-transp;display-var=*dvar;s3c2440fbhw_set_var(dvar,fbi);*设置

15、RGB颜色信息,设徨S3C2440A的1.CD限制寄存器*/return0;3.3 编写初始化函数初始化函数首先初始化1.CD限制潺和结构体s3c2440fbjnfozmcs3c2440fb_info中结构变量fb_lnfo的成坊变址,这叫成员变革的参数做由1.CD显示耦厂商的手册获得,然后通过COnSiStenJalloC函数安排一片连续的空间,显示系统采纳的1.CD显示方式为320x240,16位彩色.须要安排的显示缓冲区为32024016/8=ISOk字节海冲区通常安排在片外SDRAM中,起始地址和末地址保存在1.CD限制器寄存器1.CDSADDRI和1.CDSADDR2里,最终调用registerramebuffer(Sfbi-fb)ifb_info结构变质fb量记入内核.初始化函数如下:int_inits3c2440fbjnit(void)(structs3c2440fbjnfo*fbi;intret;fbi=s3c2440fbJnitbinfo();*初始化1.C

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 论文 > 毕业论文

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!