一、前言
闲来无事,在X宝上搜寻了一套DE2-115的FPGA开发板以丰富业余生活。虽附带光盘里包含各外设及组件驱动及接口样例,但本着“不捣腾不痛快”的折腾精神,将DE2-115的各个外设重新整理并玩转一遍。
DE2-115全貌见下图,LCD1602是一个简单、实用的显示交互界面;DE2-115中的1602不支持中文字库。
二、接口说明
1602 LCD模块接口如下图所示,对几个信号做简要说明:
#4 (RS) - DB内容指示信号:0-当前DB数据为命令数据;1-当前DB数据为显示数据。
#5 (RW)- 读写指示信号:0-当前进行写操作;1-当前进行读操作。
#6 (E)- 片选使能指示信号:0-片选无效;1-片选有效。
#7~#14 (DB0~DB7)- 显示或命令读写数据。
三、接口时序
写时序如下图所示:由于LCD 1602配置接口没有时钟,接口时序需要严格遵守。
读时序
四、接口设计
1 //--====================================================================================-- 2 // THIS FILE IS PROVIDED IN SOURCE FORM FOR FREE EVALUATION, FOR EDUCATIONAL USE OR FOR 3 // PEACEFUL RESEARCH. DO NOT USE IT IN A COMMERCIAL PRODUCT . IF YOU PLAN ON USING THIS 4 // CODE IN A COMMERCIAL PRODUCT, PLEASE CONTACT JUSTFORYOU200@163.COM TO PROPERLY LICENSE 5 // ITS USE IN YOUR PRODUCT. 6 // 7 // Project : Verilog Common Module 8 // File Name : lcd_reg_intf.v 9 // Creator(s) : justforyou200@163.com 10 // Date : 2015/12/01 11 // Description : A Reg Timing for LCD1602 12 // 13 // Modification : 14 // (1) Initial design 2015-12-01 15 // 16 // 17 //--====================================================================================-- 18 19 module LCD_REG_INTF 20 ( 21 clk , 22 rst_n , 23 write , 24 read , 25 wdata , 26 reg_sel , 27 rdata , 28 ready , 29 lcd_rs , 30 lcd_rw , 31 lcd_en ,