点阵字符型晶显示器驱动控制电路设计.doc

点阵字符型晶显示器驱动控制电路设计.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 点阵字符型液晶显示器驱动控制电路设计 (6学时) 一、实验目的 熟悉Verilog状态机的一般形式,使用状态机控制LCD 1602显示器。 二、实验内容设计LCD102显示器控制器,实现在LCD屏上显示ASCII字符。 三、实验程序 显示地址、显示ASCII码分别由SW12-SW8和SW7-SW0设定。显示地址、显示ASCII码分别由SW12-SW8和SW7-SW0设定。 modulelcd1602(rs,rw,en,clk,reset,lcd_address,lcd_date_in,lcd_data_out,on,blon,key); input clk,reset,key; input [7:0] lcd_date_in;//数据引脚连接 input [4:0] lcd_address; output [7:0] lcd_data_out; outputrs,rw,en,on,blon; reg rs,rw,en,ret; reg [7:0] lcd_data_out; reg [7:0] state; reg [2:0] count; reg [30:0] counter,t1,t2,t3,t4,m1,m2; //reg [4:0] t1,t2,t3,t4,m1,m2; parameter sta1=3b000,sta2=3b001,sta3=3b010,sta4=3b011,sta5=3b100; parameter //funset=8//clear=8 //完成清屏DDREM= 8//8setdate=8assign on=1; assign blon=1;always @(negedge reset or posedge clk or negedge key) beginif(!reset)beginret=0;state=DDREM;count=sta1;endelse if(!key)beginif(ret==1)state=DDREM;endelse if(!ret) begin//case(state) //funset://初始化 //begincase(count)sta1:beginif(counter==75000)beginlcd_data_out=8h38;//工作方式设定if(m1!=20)m1=m1+1;else beginen=1;if(m2!=20)m2=m2+1;elsebeginen=0;m1=0;m2=0;counter=0;count=sta2;endendendelse counter=counter+1; end sta2:beginlcd_data_out=8h08; //指令0x08 关显示屏if(m1!=75000)m1=m1+1;else beginen=1;if(m2!=75000)m2=m2+1;else begin en=0;m1=0;m2=0;count=sta3;endendend sta3:beginlcd_data_out=8//完成清屏if(m1!=75000)m1=m1+1;else beginen=1;if(m2!=75000)m2=m2+1;else begin en=0;m1=0;m2=0;count=sta4;endendend sta4:beginlcd_data_out=8//指令0x06 输入方式设置AC+1if(m1!=75000)m1=m1+1;else beginen=1;if(m2!=75000)m2=m2+1;else begin en=0;m1=0;m2=0;count=sta5;endend endsta5:beginlcd_data_out=8//指令0x0C 开显示屏if(m1!=75000)m1=m1+1;else beginen=1;if(m2!=75000)m2=m2+1;else begin en=0;m1=0;m2=0;end//count=sta1;state=clear;endendendendcaseif(count==sta5)beginret=1;state=setdate;end//end/*clear://完成清屏beginlcd_data_out=8rs=0;rw=0;if(m1==75000)m1=m1+1;else beginen=1;if(m2!=75000)m2=m2+1;else begin en=0;m1=0;m2=0;state=DD

文档评论(0)

pkaokqunw + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档