当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]摘要:为了提高LCD1602显示效果,增强抗扰能力,文章基于TOP2812开发板,依据LCD1602操作时序要求,在开发板CPLD部分实现了LCD1602显示系统的设计。文中对LCD1602时序进行了

摘要:为了提高LCD1602显示效果,增强抗扰能力,文章基于TOP2812开发板,依据LCD1602操作时序要求,在开发板CPLD部分实现了LCD1602显示系统的设计。文中对LCD1602时序进行了详细分析,并在QuartusⅡ平台下采用Verilog HDL编写了test bench测试文件和驱动程序,经仿真和实际测试表明,显示效果较好,达到了设计要求。

关键词:CPLD;LCD1602;显示系统;时序;Vetilog HDL

随着技术的发展,社会数字化的程度显得越来越明显,集成电路在社会当中的应用也越来越广泛。传统的ASIC曾在数字领域扮演重要角色,虽种类繁多,但功能固定、管脚有限,应用范围也相对较窄,因此在一定程度上限制了人们对其的使用。如今,随着现场可编程技术的发展,FPGA及CPLD技术已不再是传统 ASCI技术领域的一个点缀与补充,其显然已成为电子应用领域广受欢迎的实用化技术,为数字系统的科研实验、样机试制、小批量产品的即时实现等提供了最佳途径。EPM240T100C5是Altera公司生产的MaxII系列CPLD,其功耗低、价格廉、配置灵活、资源丰富,具有较高的市场性价比,因而备受青睐。

在显示输出方面,目前主要采用3种方式,即:图形、数字或专用符号,在嵌入式领域,显示常采用LED、数码管及液晶显示器。前两种虽然实现简单,但显示内容不够丰富。LCD1602具有体积小、功耗低、显示容量大、接口简单,操作方便,能够显示字符、数字及符号等优点,因此被广泛应用于日常生活当中。

该文以EPM2405100C5为控制核心,在Quartus II平台下采用Verilog HDL编写LCD1602显示驱动程序,并生成相应目标文件,最终下载至目标芯片,实现LCD1602的显示设计功能。

1 实现原理

将EPM240T100C5的I/O口与LCD1602的数据管脚及控制管脚进行接口,利用Verilog HDL编写软件程序,使CPID输出满足LCD1602的操作时序。由于LCD1602属慢显示设备,而CPLD往往时钟频率较高,为此需要对CPLD主时钟进行分频,从而产生合适的时钟信号供LCD1602使用。在读/写数据时,需要对LCD1602的忙标志进行检测,只有在忙标志位为0的情况下,才能完成对数据或指令的读取与写入。此外,为方便对LCD1602模块进行操作,其内部控制器为该模块提供了11条控制指令,通过写入相应的控制指令,可定制该模块的显示模式。LCD1602为用户提供的存储空间分3部分:DDRAM、CGRAM和CGROM。DDRAM共有80个存储空间,对应屏幕的两行,每行40个,但每行可显示的地址只有16个,其他地址所写入的数据可通过移屏进行显示。CGRAM为用户自定义字符图形RAM,用户可以定制特定的图形。 CGROM为字符发生ROM,其内部已存储160个不同点阵字符图形,由于其编码与ASC II码基本一致,因此在进入写操作时,也可直接写入对应字符,如写8’h41,可显示字符A,直接写入“A”,也可达到同样的显示效果。

LCD1602的初始化主要用于完成字符显示模式、光标显示模式、写入数据后地址指针变化的设置、清屏及开显示等操作。该模块若要成功地被驱动,除了正确的初始化步骤以外,还必须依赖于准确的操作时序,因此分析其操作时序也就显得尤为重要。

2 时序分析

操作时序为IC芯片的工作提供了正确的节拍,如果节拍错了,那么芯片将不可能正常工作。LCD1602的写操作时序图如图1所示。

 


由图1可知,若要写入正确的数据,必须在E的上升沿到来之前建立RS及R/W电平,同时完成数据的写入操作,在E处于高电平期间,写入的数据才能有效。图 1中,tsp1即为RS、R/W的建立时间,tsp2为数据的建立时间,若要正确完成写入操作,必须使各建立时间满足时序要求。数据在E的高电平期间有效,即持续一个脉冲宽度tpw。图1中具体参数的时间要求如表1所示。

 


为方便建立E信号的波形,可取tpw=tc/2,即将E的波形设计为方波,只要保证tc>400 ns,则其高、低电平所维持的时间都将不小于200 ns,而如果将RS、R/W及数据变化的时间都取在E信号低电平的中间位置,则地址及数据的建立时间和地址及数据的保持时间都将大于100 ns,对比表1的时序参数要求,显然按这种方法设计出的时序是完全满足LCD1602写操作时序要求的。

因此,只需选取一个合适的tc,也就基本确定写操作时序了。由于LCD1602初始化时需要延时5 ms来完成对显示模式的设定,因此可选取5 ms作为tc的取值,从而简化显示模块的初始化操作。

3 软件实现

文中设计采用Verilog HDL实现,模块程序的接口如下所示:

 


由于LCD1602初始化需要按特定步骤写入不同的控制指令,其可显示的数据地址在空间上是两个独立的固定区域,因此可借用有限状态机的设计思想进行设计系统。状态采用一位独热码进行编码。所定义状态如下:

 


 


在QuartusⅡ平台下,经综合所得的状态转移关系如图2所示。

 


要想实现状态的转移,需构建LCD1602显示模块所必需的时钟,在时序分析过程中已确定将E信号的周期设计为5ms,而数据的写入以及RS、R/W电平的变化总是在E信号低电平的中间发生,因此可重新建立一个时钟,使其在该位置发生跳变,可以是上升沿也可以是下降沿,其周期与E信号周期相等,为便于设计,也将该时钟设计成脉宽为50%的方波信号。这里设E信号的时钟为lcd_en,在E信号低电平中间位置跳变的时钟为clkjlag。若选择 clk_flag的上升沿触发RS、R/W电平的改变及数据的写入操作,则显然clk_flag高电平要超前clk_div高电平90°。为得到相位上互差90°的两个时钟,可以通过对系统时钟分频,构建一个周期为2.5ms的时钟clk_div,使得clk_flag总是在clk_div的上升沿翻转,而lcd_en总是在clk_div的下降沿翻转,由此即可得到相位上互差90°的两个时钟信号了。由于主时钟为30 Mhz,因此需对其进行37 500分频,即可得到周期为2.5 ms的clk _div。其软件实现如下:[!--empirenews.page--]

 


由clk_div时钟信号获取lcd_en及lcd_flag两个时钟信号,具体如下:

 


至此,只需捕获clk_flag的上升沿,并在该跳变沿处送入指令或数据即可。而状态之间的转移关系则需按初始化的正确步骤进行,完成初始化后,指定DDRAM的地址,并向lcd_dat送数据即可实现数据的写入操作。

4 仿真结果及实现效果

软件仿真借助了第三方的仿真软件Modelsim,在QuartusII当中利用Test Bench Template Writer建立仿真模板文件,并在模板当中给出激励条件,编译后即可生成用于仿真测试的vt文件了。初始化部分的仿真结果如图3所示。

 


上图信号从上到下依次为:clk,rst_n,lcd_dat,lcd_en,lcd_rs,lcd_rw。由图3可知,由于系统时钟频率较高,clk已显示为一条粗线,rst_n仅延时10个仿真单位,即被拉高为高电平,lcd_dat中出线一段蓝色线条,占lcd_en的3个周期,即实现了15ms的延时,紧接着的四个周期连续写入8’h38,然后8’h01等,直到8’h0c完成对LCD1602的初始化。图4为初始化后向LCD1602写入的数据,由于显示内容的编码与ASCII码基本一致,可将其设置为ASCII进行观察。

 

将Verilog HDL编写的程序进行编译,并将生的目标代码下载至EPM240T100C5,最终显示的效果如图5所示。

 


5 结束语

通过对LCD1602时序进行详细分析,本文实现了用CPLD驱动LCD1602显示模块工作的目的。通过仿真及硬件验证,均说明了设计的合理性与正确性。另外,采用模块化设计,也为后续系统的大规模化和可扩展性提供了很大方便。相比单片机实现过程,利用CPLD实现显得更加简单、方便。另外,CPLD管脚的可配置特点也为CPLD的使用带来了极大的灵活性。随着CPLD及FPGA技术的发展,数字系统设计也必将发展到一个新的阶段。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭