




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验四 有限状态机的设计LCD显示控制实验一、 实验目的1、 了解LCD1602液晶显示器的工作原理。2、 了解时序电路FPGA的实现。3、 学习用VHDL语言来描述时序电路的过程。二、 硬件要求1、 可变时钟源。2、 LCD1602液晶显示模块3、 A/D转换芯片ADC08094、 主芯片 CycloneII EP2C35F672C6。三、 实验原理该实验是利用FPGA控制LCD1602的时序,进行液晶显示。LCD是一个可以显示两行字符或数字的液晶显示模块。该芯片管脚如右图所示。芯片引脚及其说明如下:1602采用标准的16脚接口,其中: 第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚
2、:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第1516脚:空脚1602液晶模块内部的字符发生存储器(CGROM)已
3、经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”LCD1602的工作时序可查阅其他资料。四、 实验内容及步骤本实验的内容就是用FPGA模拟产生LCD1602的时序,使其正常工作,显示字符,实验步骤如下:1、 编写LCD1602时序的VHDL代码。2、 用QuartusII6.0对其进行编译仿真。3、 在时序确定无误后,选择芯片CycloneII EP2C35F672C6。4、 给芯片
4、进行管脚绑定,在此进行编译。5、 观看实验结果。五、 实验结果与分析这是LCD1602的仿真波形图。在RS,RW均为高电平时,LCD显示从DB0DB7的数据。六、 问题与质疑1 LCD1602的工作时序是怎样的?答:读操作时序:写操作时序:七、 程序代码library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity LCD1602 is Port ( Clk : in std_logic; -状态机时钟信号,同时也是液晶时钟信号,其周期应该满
5、足液晶数据的建立时间 Reset:in std_logic; LCD_RS : out std_logic; -寄存器选择信号 LCD_RW : out std_logic; -液晶读写信号 LCD_EN : out std_logic; -液晶时钟信号 LED : out std_logic; LCD_ON : out std_logic; LCD_BLON : out std_logic; LCD_Data : out std_logic_vector(7 downto 0); -液晶数据信号end LCD1602;architecture Behavioral of LCD1602 is
6、 type state is (set_clc,set_dlnf,set_cursor,set_dcb,set_cgram,write_cgram,set_ddram,write_LCD_Data,set_ddram2,write_LCD_Data2); signal Current_State:state; type ram2 is array(0 to 7) of std_logic_vector(7 downto 0); signal Clkk : std_logic; signal Count : std_logic_vector(20 downto 0); signal Clk_Ou
7、t : std_logic; signal LCD_Clk : std_logic;begin LCD_EN = Clk_Out ; -液晶时钟信号 LED = Clk_Out; LCD_RW = 0 ; -写数据 LCD_ON = 1; LCD_BLON = 1;clock :process(Clk,Reset) begin if(Reset = 0)then Count 0); elsif(rising_edge(clk)then Count = Count + 1; if(Count = 0)thenClk_Out = not Clk_Out; end if; end if; LCD_C
8、lk = Clk_Out;end process;control:process(LCD_Clk,Reset,Current_State) -液晶驱动控制器 variable cnt1: std_logic_vector(2 downto 0); begin if Reset=0then Current_State 1); LCD_RS=0; elsif rising_edge(LCD_Clk)then Current_State = Current_State ; LCD_RS LCD_Data=;-01H Current_State LCD_Data=;-3cH Current_State LCD_Data=;-06H Current_State LCD_Data=;-0cH Current_State LCD_Data=;-40H Current_State -向CGRAM中写入年 LCD_RS=1; Current_State -从第一行的起始地址开始显示 LCD_Data=;-80H Current_State LCD_RS=1; LCD_Data=; Cu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 锌电解节能电极项目可行性研究报告
- 防汛知识培训反思课件
- 职业发展咨询公司合伙协议书
- 防暑降温知识培训教材课件
- 浙江省余姚市2025年九年级上学期数学第一次教学质量检测试题附答案
- 子女抚养权变更合同7篇
- 试用期过多久必须签订劳动合同4篇
- 智能交通系统的实时数据分析-洞察及研究
- 钢筋组承包合同4篇
- 河北省唐山市2025-2026学年高三上学期开学摸底考试生物试卷
- 内河、玻璃钢、海洋木质及小型钢质渔业船舶法定检验技术规则
- 四川省2019年 (2017级)普通高中学业水平考试通用技术试卷
- (绿化)质量评估报告
- GB/T 2411-2008塑料和硬橡胶使用硬度计测定压痕硬度(邵氏硬度)
- GB/T 19227-2008煤中氮的测定方法
- GA/T 1217-2015光纤振动入侵探测器技术要求
- 企业员工出差登记表Excel模板
- 《鱼》 一种提高士气和改善业绩的奇妙方法
- 汽车认购合同
- 下肢深静脉血栓及肺栓塞
- GB∕T 37303.6-2019 船舶和海上技术 船舶操纵性 第6部分:模型试验特殊要求
评论
0/150
提交评论