chenguanglu 发表于 2008-8-18 17:05:10

液晶 16032 (兼容12864) verilog 控制代码

http://cache.amobbs.com/bbs_upload782111/files_10/ourdev_382756.jpg
(原文件名:图片 001.jpg)
module LCD(clk, rs, rw, en,dat);

input clk;


output dat;
outputrs,rw,en;
//tri en;
reg e;
reg dat;
reg rs;
reg counter;
reg current,next;
reg clkr;
reg cnt;
parameterset0=4'h0;
parameterset1=4'h1;
parameterset2=4'h2;
parameterset3=4'h3;
parameterdat0=4'h4;
parameterdat1=4'h5;
parameterdat2=4'h6;
parameterdat3=4'h7;
parameterdat4=4'h8;
parameterdat5=4'h9;

parameternul=4'ha;


always @(posedge clk)         //da de shi zhong pinlv
begin
counter=counter+1;
if(counter==16'h000f)
clkr=~clkr;
end

always @(posedge clkr)
begin

current=next;

case(current)
    set0:   beginrs<=0; dat<=8'h30; next<=set1; end
    set1:   beginrs<=0; dat<=8'h0c; next<=set2; end
    set2:   beginrs<=0; dat<=8'h6; next<=set3; end
    set3:   beginrs<=0; dat<=8'h1; next<=dat0; end
    dat0:   beginrs<=1; dat<=8'hb0; next<=dat1; end
    dat1:   beginrs<=1; dat<=8'ha1; next<=dat2; end
    dat2:   beginrs<=1; dat<="F"; next<=dat3; end
    dat3:   beginrs<=1; dat<="P"; next<=dat4; end
    dat4:   beginrs<=1; dat<="G"; next<=dat5; end
    dat5:   beginrs<=1; dat<="A"; next<=nul; end
   nul:   begin rs<=0;dat<=8'h00;                  //这段保证前段显示部分至少执行一遍 然后 把液晶的E 脚 拉高
            if(cnt!=2'h2)
                  begin
                     e<=0;next<=set0;cnt<=cnt+1;
                  end
                   else
                     begin next<=nul; e<=1;
                  end   
            end
   default:   next=set0;
    endcase
end


assign en=clkr|e;
assign rw=0;
endmodule



我在网上找了很久没有发现有价值的东西,所以自己花了点时间写了一个 很简单
献给大家多提意见共同进步

不只为什么 最后的控制en输出的时候与门不行,后来换成或门可以了

点击此处下载 ourdev_382757.rar(文件大小:195K) (原文件名:LCD.rar)

bingwang 发表于 2008-12-11 09:20:07

ku

pcs3 发表于 2009-2-22 11:31:18

顶一下!!

tiky 发表于 2009-8-1 05:13:33

谢谢分享!

hisun 发表于 2009-8-3 20:48:13

学习一下

tgl3721 发表于 2009-8-20 15:38:46

mark

wherethriving 发表于 2010-1-4 22:13:38

mark

zzjjhh250 发表于 2010-1-13 18:02:50

顶一下吧 看看!
不过我只用VHDL Verilog看了点。

xml2028 发表于 2010-1-14 09:42:27

mark ,改天来搞搞

sagetom 发表于 2010-1-14 14:06:44

好,推崇DIY。

22seu_08 发表于 2010-1-15 15:25:32

thanks

chinatft 发表于 2010-1-30 15:26:03

mark

tear086 发表于 2010-1-30 21:43:59

弓虽。
已验证。@1602 / @12864(st7920)

quzegang 发表于 2010-1-31 02:31:35

学习

weixintec 发表于 2010-2-2 18:35:01

学习

1181zjf 发表于 2010-2-2 18:40:45

MARK

lmldai 发表于 2010-3-10 21:02:08

学习,谢谢

wuziqiang 发表于 2010-4-30 00:25:45

请教楼主 为什么我把你的程序COPY过来烧进去12864一点反应都没有呢?望楼主不吝赐教!

lisn 发表于 2010-5-3 11:55:33

学习,借鉴

heibaogame 发表于 2010-10-16 19:39:36

MARK

avrwoo 发表于 2010-10-16 19:57:28

mark

zxcvb110 发表于 2010-10-16 21:28:57

好的在这儿学习了!!!

kaitejin 发表于 2010-10-16 23:22:26

mark

power_peng 发表于 2010-12-25 10:34:25

1602/12864顶

PXJ_520 发表于 2011-3-17 17:10:02

mark

LGDSTM 发表于 2011-4-23 22:07:17

谢谢

fwt11 发表于 2011-11-21 13:07:40

mark!
页: [1]
查看完整版本: 液晶 16032 (兼容12864) verilog 控制代码