基于CPLD的双屏结构液晶控制器的研究与设计_第1页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于cpld的双屏结构液晶控制器的研究与设计随着技术的进展, 在现代设计中,可编程规律器件的运用越来越多,缘由在于其规模大,体积小,功能强,价格廉价。可擦写上万次,使得硬件设计像软件设计一样灵便便利。 hdl语言作为硬件描述语言有其独特的优势:在门级描述的底层,描述的设计思想、结构和规律关系清楚明白,设计语言简练、易学易用,模块化分层结构在大规模设计时具有优势。假如用法verilog把控制功能集成在一片cpld芯片里,囫囵电路将会变得更简洁、有用。2.液晶控制器原理液晶控制器用于和液晶屏的接口,一方面不断地把显存的数据刷新到液晶屏上,另一方面控制单片机对显存数据的更新。双屏结构液晶控制器内部主

2、要的计数器,分离是4bit时钟同步字符计数器、行计数器和帧计数器,它们在系统时钟fclk的控制下同时计数,主要是用来产生行同步信号lp 和帧同步信号fp ,分离用来控制液晶屏换行和换页。液晶屏就是在这三个信号的控制下反复地把显存里的数据刷新到屏幕上。本设计采纳 公司生产的epm7128scpld芯片来实现 控制器以及它的外围规律时序的所有功能,用法的液晶屏为640×480双屏显示结构,即上半屏和下半屏同时显示,ram为一片srm20512lltm78(62512)。液晶屏刷新速度的计算公式为ffrp = fclk/ ( hn×nx )。其中,ffrp为液晶屏显示帧扫描频率,

3、普通要大于70 hz ,hn为一行显示的4bit同步字符数640/4=160,nx为一屏帧扫描的行数480/2=240,fclk为系统的工作时钟频率,采纳晶振提供频率11.05926mhz,将其四分频得到2.764815mhz即可作为系统时钟fclk。系统构成如下图所示:3.实现过程1)液晶刷新时序产生此部分主要产生行同步和帧同步信号,完成行和帧同步。因为双屏结构液晶屏以4bit为单位上下同时显示,可以在cpld内定义两个寄存器,行含4bit字符寄存器scp_reg,值为640/4=160, 帧含行寄存器lp_reg,值为480/2=240。字符时钟同步计数器scp_count为4bit字符的

4、计数器,在系统时钟scp_clk作用下计数加一,与行含字符寄存器内容比较,若等,表示一行结束,开头下一行,scp_count清零,行计数器lp_count加一,lp_flag置一,产生行同步信号lp。行计数器lp_count与帧含行寄存器内容比较,若等,表示一帧结束,开头下一帧,scp_count, lp_count 清零,fp_flag置一,产生帧同步信号fp。实现的程序如下:always(posedge scp_clk)beginscp_count=scp_count+1;if(scp_count=scp_reg)beginlp_count=lp_count+1;lp_flag=1;scp

5、_count=0;if(lp_count=lp_reg)beginfp_flag=1;lp_count=0;scp_count=0;endelse fp_flag=0;endelse lp_flag=0;end操作lcd时,scp_reg=160,lp_reg=240。时取scp_reg=3,lp_reg=4,如下:2) 单片机写数据至ram此部分为单片机通过cpld更新ram数据。单片机写信号wr有效,cpld推断数据线上内容为命令还是数据,若为命令,则将db内容存入命令寄存器cmdreg,若为数据,推断命令寄存器cmdreg内容以指示状态。若cmdreg为8h00或8h02,表示db为低或

6、高八位地址,分离存入低高八位地址寄存器addl和addh,若为8h04,表示db为要写入ram的数据,存入数据寄存器ioreg。cmdreg db内容8h00 低八位地址8h02 高八位地址8h04 数据if(a0=1) cmdreg="db"else beginif(cmdreg=8'h00) addl="db"  else if(cmdreg=8'h02)beginaddh="db"p=addh,addl;endelse if(cmdreg=8'h04) ioreg="db&qu

7、ot;end3)显存的数据刷新到液晶屏此部分完成ram数据到lcd的正确映射。ram存储和lcd对应关系如下图所示:正确的将ram中的数据送入lcd,使液晶屏上下半屏随着时钟同时显示,必需理清ram存储和lcd显示间的地址关系。lcd为640×480,所以下半屏起始地址对应的内容应为640×240/8=19200,即ram0x4b00中的内容。因为4bit字符同步时钟scp_clk内含四个周期computerclk,可以在computerclk的二三周期,分离将ram地址0x0000的内容ab和0x4b00的内容ef传至八位寄存器reg1和reg2,在余下的第四面期,将re

8、g1和reg2的高四位即a和e传至上下半屏数据寄存器ud_reg和ld_reg,lcd将同时显示上半屏a下半屏e。下一个scp_clk时,只需将reg1和reg2的低四位即b和f传至ud_reg和ld_reg,则lcd将同时显示上半屏b下半屏f。以后每两个scp_clk,ram地址加一,同样的方式取数据刷新lcd。仿真图中蓝线指示为ram地址加一后上述一个循环的开头。4) 数据挑选器单片机对ram数据的更新,cpld刷新lcd对ram的读取,可以通过一个二选一数据挑选器完成。当单片机写时,置挑选信号sel为1,存放操作的地址寄存器addl、addh和数据寄存器ioreg与ram地址数据衔接,完成mcu对ram数据的更新;当sel为0,刷新液晶屏的地址寄存器q和数据寄存器ud_reg、ld_reg与ram地址数据总线衔接,刷新lcd。4结束语以上主要介绍了verilog hdl设计cpld作为液晶控制器的几个基本部分,经过验证,所设计控制器在单片机作用下正确完成液晶的显示。本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论