



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
fpga控制lcd显示的设计与实现王 彦 方 艾 张清明南华大学电气工程学院(湖南421001)1摘要:研究用fpga实现对lcd显示驱动的控制,通过一个数字时钟作为演示,具体论证用fpga驱动字符型液晶显示器的方法,其核心是控制液晶显示控制器的时序,经测试,该方法切实可行,可以代替用单片机驱动lcd。关键字:fpga lcd 驱动中图分类号: 文献标识码:design & implementation on controlling lcd by fpgawang yan fang ai zhang qingming( college of electrical engineering, nanhua university hengyang hunan china 421001 ) abstract: research into controlling lcd by fpga. by demonstrating a digital clock, the implementation of driving a character lcd by fpga is reasoned, which is mainly by controlling the time sequence of the lcd display controller. the technique is proved to be feasible after test, so that it can take the place of single chip process mode.keywords: fpga lcd driver51概述:电子产品中,lcd 是实现人机对话的重要元素之一,其显示方式灵活多样、工作电压低、功耗低、寿命长、无辐射、无污染等优点,使之得到了广泛应用。目前,液晶显示几乎已应用于生产、生活的各个领域,如电子手表、手机、电子字典、pda、便携计算机等。液晶显示屏大致可分为段式、字符式、点阵式或单色,彩色等。其中字符型液晶显示模块是一类专用于显示字母、数字、符号,中文等的点阵型液晶显示模块。液晶显示驱动控制一般是由单片机完成的,技术已相当成熟,但由于单片机系统中必须使用许多分立元件组成外围电路,占用系统较多资源,可能需要共用总线,造成编程的相对复杂,整个系统的抗干扰性也会降低。在某些应用场合如高温,高压,高频辐射较强的环境中,系统可能无法稳定工作。fpga提供了新的思路,fpga系统资源丰富,灵活性强,抗干扰能力强,应用范围广,利用硬件描述语言(dhl)可以将软件功能用硬件实现,能方便地与各类应用系统结合,体积小,外围电路少,作为嵌入式系统的核心更显其优越性。我们采用fpga实现了对字符型液晶显示模块lcm的驱动控制,并通过演示一个数字时钟(vhdl编程实现),证明该方法行之有效,经测试达到良好的显示效果。预计将得到广泛的应用。2 字符型液晶显示器原理:字符型液晶显示器一般为点阵式,以mdls字符型液晶显示器为例,它由hd44780控制器控制,内部带有字库,通过一条8位的数据总线写入命令,数据,完成显示。hd44780的引脚功能(表1),指令集(表2),信号功能(表3)及写操作时序(图1)如下:引脚符号状态功能1vss电源地2vdd5v逻辑3v0电源液晶驱动电源4rs输入寄存器选择1:数据0:指令5rw输入1:读操作 0:写操作6e输入使能信号7db0三态数据总线(lsb)8db1三态数据总线9db2三态数据总线10db3三态数据总线11db4三态数据总线12db5三态数据总线13db6三态数据总线14db7三态数据总线(msb)表1. hd44780引脚功能rsr/wdb7db6db5db4db3db2db1db0功 能0000000001清屏000000001*归位00000001i/ds输入方式设置0000001dcb显示开关控制000001s/cr/l*光标、画面位移00001dlnf*功能设置0001a5a4a3a2a1a0cgram地址设置001a6a5a4a3a2a1a0ddram地址设置01bfac6ac5ac4ac3ac2ac1ac0读bf及地址计数器ac值10写数据11读数据表2. hd44780指令集rsr/we功能00下降沿写指令代码01高电平读忙标志和ac值10下降沿写数据11高电平读数据表3. hd44780信号功能表 图1. hd44780写操作时序图3 驱动控制原理:用fpga驱动液晶显示的原理是对控制器hd44780进行控制,时序与用单片机驱动的时序是基本相同的,通过8位的总线,先对hd44780进行配置,即写入命令,然后输入要显示的内容,即写入数据,状态转换图如图2所示。图2. fpga控制hd44780的状态转换图4 程序设计:使用开发软件为xilinx ise4.2,编程语言为vhdl,仿真工具为modelsim xilinx edition 5.3d xe。程序设计的目的,就是通过vhdl编程,使得产生的fpga器件可以完成上述的功能,器件顶层图及接法如图3所示,程序代码见附录。图3. fpga与lcm连接图5 结束语:采用清华tpg_fpga实验箱及北京蓬远科贸公司的mdls16265b型lcd进行测试,实现了数字时钟在液晶显示器上的显示,可见,上述方法切实可行,fpga完全可以替代单片机控制液晶显示。随着电子技术的不断发展,应用领域的不断扩宽以及器件成本的不断降低,这一技术必将得到广泛的应用。参考文献:1. 黄正谨,徐坚,章小丽等.cpld系统设计技术入门与应用【m】. 北京:电子工业出版社.2002。2. 潘松,黄继业.eda 技术实用教程【m】.北京:科学出版社.2002。3. 赵俊超等.集成电路设计vhdl教程.【m】.北京:北京希望电子出版社.2002。4. 李维是,郭强.液晶显示应用技术【m】.北京:电子工业出版社.2000。附录:-*-程序名:lcd_drive.vhd-功能:实现一个数字时钟,并驱动液晶显示(限于篇幅,数字时钟程序未给出)-说明:数据总线的接口是data,延时的作用是等待液晶内部电路对数据进行处理-*library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity lcd_driver is generic(n:integer:=32000; delay:integer:=100);port ( clk : in std_logic; -define i/os reset:in std_logic; lcdda : out std_logic; lcdrw : out std_logic; lcden : out std_logic;data : inout std_logic_vector(7 downto 0);test : out std_logic_vector(7 downto 0); end lcd_driver;architecture behavioral of lcd_driver is type state is (set_dlnf,clear_lcd,set_cursor,set_dcb,set_location,write_data); signal current_state:state; type rom is array(0 to 3) of std_logic_vector(7 downto 0); constant datarom:rom:=(01000100),(01000101),(01010100),(01010011);signal clkk:std_logic; begindivider:process(clk,reset) -divide 32mhz oscillator freqency into 1hz variable cnt:integer; begin if reset=0then cnt:=0; elsif rising_edge(clk) then cnt:=cnt+1;if cnt=n then clkk=1; else clkk=0;end if;if cnt=2*n then cnt:=0;end if; end if; end process divider; control:process(clkk,reset,current_state)variable cntt,cnt2:integer;beginif reset=0then current_state=set_dlnf;cntt:=0;cnt2:=0;elsif rising_edge(clkk)thentestlcden=0; lcdda=0;lcdrw=0;datadelay and cntt=delay*2 then cden=1; -delay 200uselse lcden=0; -delay 200usend if;if cntt=delay*3 thencurrent_statelcden=0; lcdda=0; lcdrw=0; datadelay*3 and cntt=delay*6 then lcden=1;-delay 200uselse lcden=0; -delay 200us end if; if cntt=delay*9 then current_statelcden=0; lcdda=0; lcdrw=0; datadelay and cntt=delay*2 then lcden=1;-delay 200uselse lcden=0; -delay 200us end if;if cntt=delay*3 thencurrent_statelcden=0;lcdda=0;lcdrw=0;datadelay and cntt=delay*2 then lcden=1; -delay 200uselse lcden=0; -delay 200us end if;if cntt=delay*3 thencurrent_statelcden=0; lcdda=0; lcdrw=0; datadelay and cntt=delay*2 then lcden=1;-delay 200uselse lcden=0; -delay 200us end if;if cntt=delay*3 thencurrent_statelcden=0;lcdda=1;lcdrw=0;if cnt2=3 thendatadelay and cntt=delay*2 then lcden=1; -delay 200uselse lcden=0; -delay 200us end if;if cntt=delay*3 thencurrent_state=write_data;cntt:=0;cnt2:=cnt2+1;end if;elsecnt2:=0;cur
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉字笔画课件演示
- 辽宁省七校协作体2025-2026学年高三上学期开学考试英语模拟试题(含解析)
- 2025年山西省临汾市中考物理模拟试卷(含答案)
- 3D打印技术与应用知到智慧树答案
- 互联网医疗机构经营模式分析
- 内衣行业市场趋势预测
- 2025双方合作经营教育公司合同范本
- 军事理论-国家安全环境强化版知到智慧树见面课答案
- 汉字书写与鉴赏课件
- 水粉陶罐基础知识培训课件
- TCAPC 016-2024 院外呼吸慢病健康管理规范
- 露天矿山安全知识培训课件
- 《中小企业员工激励机制存在的问题及完善对策研究》4000字
- 第1章 汽车4S店概述
- 呼兰河传完整版课件
- 医疗器械监管实务
- 旅游景区反恐防爆应急预案
- 实验室隐患排查培训
- 浪潮iqt在线测评题及答案
- 中外运社招在线测评题
- GB/T 18802.331-2024低压电涌保护器元件第331部分:金属氧化物压敏电阻(MOV)的性能要求和试验方法
评论
0/150
提交评论