网站大量收购闲置独家精品文档,联系QQ:2885784924

FPGA实验+代码课案.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FPGA实验代码课案

2014年EDA实验 第一次实验: 实验1:QII软件及实验板的使用;用图形输入法和语言输入法完成点灯实验(用两个按键控制两个灯的亮灭:灯的状态随按键状态改变而改变)。完成软件仿真。 module simple_lightcon(input wire [1:0] key, output wire [1:0] led); assign led= key; endmodule 实验2:联控点灯实验: 用两个按键独立控制同一个灯亮灭,第三个按键同时控制该灯和另一个灯亮灭。 module com_lightcon(input wire [2:0] key, output wire [1:0] led); assign led[0]= key[0]; assign led[1]= key[0]( key[2]^ key[1]); endmodule 实验3:流水灯实验: 完成一个8路流水灯控制实验,要求有以下3种花型: 1)8路灯同时亮灭; 2)从左至右再从右至左逐个亮(每次只有1路亮); 3)8路灯每次4路灯亮,4路灯灭,且亮灭相间,交替亮灭。 用3个按键控制3种花型。按下花型按键就一直显示相应花型,再按该键可暂停。可设置1个复位键关闭显示。 /*------------------------------------------------------------------------------------------------- Filename :waterlight.v Author :Basson Data : 2014-11-21 Version : V1.0 Description : This file has the module of HDL top. Modification History: Data by Version Change Description ========================================================= 14/11/21 Basson V1.0 Original ---------------------------------------------------------------------------------------------------*/ module water_light( input wire sys_sclk, //时钟信号(输入信号) input wire srst_n, //复位信号(输入信号) input wire[2:0] key, //按键信号(输入信号) output reg [3:0] ledlight //输出接8个led灯(输出信号) ); //消抖动------------------------------------------------------------------ reg [2:0] key_reg; //用于存储现有按键 always @(posedge sys_sclk,negedge srst_n) begin if(srst_n==1b0) key_reg=3b111; else key_reg=key; end reg [2:0] key_reg_r; //用于存储前一按键 always @(posedge sys_sclk,negedge srst_n) begin if(srst_n==1b0) key_reg_r=3b111; else key_reg_r=key_reg; //用于存储前一按键 end wire[2:0] key_an=key_reg_r(~key_reg); //用于存储按键下降沿 //消抖时间设定为20ms左右------------------------------------------------------------------- parameter CCNTWITHD=20; reg [CCNTWITHD-1:0] ccnt; reg[2:0] keyout; always @(posedge sys_sclk,negedge srst_n) begin if(srst_n==1b0)ccnt=20b0; else if(key_an)ccnt=20b0; //按键有抖动就清零--消除抖动的计数器 else ccnt=ccnt+1b1; //没有抖动

您可能关注的文档

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档