集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 8722|回复: 12

FPGA初级实验 verilog let's start (流水灯实验)

[复制链接]
vvt 发表于 2010-5-2 07:53:19 | 显示全部楼层 |阅读模式
FPGA初级实验 verilog let's start (流水灯实验)

module countpro(sys_clk,rst_n,led); //接口定义

input sys_clk,rst_n; //输入:系统时钟50MHz,复位输入

output [2:0] led; //输出:3个led产生流水现象,轮流点亮

reg [25:0] count; //系统时钟频率过高,需要计数的方式来产生延时,使led保持状态一段时间

reg [2:0] led; //led低电平点亮

reg [1:0] flag; //状态转换的入口,发生变化的时候,点亮另外一个led



always @(posedge sys_clk,negedge rst_n)

if(!rst_n) //复位,给寄存器赋初值

begin

flag <= 2'b0;

count <= 26'b0;

end

else //sys_clk上升沿到来

begin

if( count == 26'b11_1111_1111_1111_1111_1111_1110 )

begin

count <= 26'b0; //count归零,便于下次重新开始计数

if(flag == 2'b10) //当flag等于2’b10时,flag归零(实际上,当flag==2’b10时,要在下一次归零,即在flag==2’b11时,马上就变成2’b00,而并非当flag==2’b10时马上变为2’b00;)

flag <= 2'b00;

else //否则flag加一

flag <= flag+2'b01;

end

else

count <= count + 1; //当count没计数到指定值是,count执行加一操作

end

always @(posedge sys_clk)

begin

case(flag) //由于flag会不断变化,并且flag在从一个值变成另一个值的时候,会保持一段很长的时间,我们利用它来产生流水灯现象

2'b00: led <= 3'b011; //点亮第一个灯 低电平点亮

2'b01: led <= 3'b101; //点亮第一个灯 低电平点亮

2'b10: led <= 3'b110; //点亮第一个灯 低电平点亮

default:led <= 3'b111; //一般要设置一个缺省状态,三个led全部灭

endcase

end

endmodule
xinu2009 发表于 2010-5-4 15:47:53 | 显示全部楼层
好东西,我以前的时候也做过,只是用的是AHDL写的!呵呵
xiaoyi118 发表于 2010-5-5 21:26:17 | 显示全部楼层
这个实验用什么软件可以仿真出来呢??还是要买开发板的呢??我是个初学者,正在看夏老师的《Verilog数字系统设计教程》希望高手大侠多多指点~~~~~
524783807 发表于 2010-5-14 13:28:58 | 显示全部楼层
谢谢楼主!辛苦了
xinu2009 发表于 2010-5-16 10:49:30 | 显示全部楼层
回复 1# vvt


    读大学的时候用过protetus仿真平台,这个东西还不错,也不用开发板,上面有单片机、FPGA/CPLD、数码管等,可以直接调用,将这些模块连接在一起后,将程序烧进去既可以观察实验结果,是一个不需要开发板的平台,挺不错,最好去看看!
这下面是protetus的教程!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
weibode01 发表于 2010-11-9 11:19:12 | 显示全部楼层
用状态机写流水灯是很容易的啊
gzcjh230 发表于 2011-6-2 11:50:36 | 显示全部楼层
纠错:AHDL≠VHDL,Protetus≠Proteus,Proteus能仿真FPGA吗?好像功能不怎么强大吧,用状态机写流水灯太浪费了,简单的事情,没没有必要搞复杂,分分频,注意时序就OK了
693294195 发表于 2011-10-5 21:11:42 | 显示全部楼层
不错的例子
绿茶盖儿 发表于 2011-10-16 00:16:06 | 显示全部楼层
回复 5# xinu2009


    貌似proteus一般用于单片机的仿真吧,不能仿真FPGA
lkpooo 发表于 2011-11-16 16:12:00 | 显示全部楼层
好东西,谢谢分享
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-7 04:40 , Processed in 0.068945 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表