FPGA/CPLD实验教程四(基本的逻辑门实验)
2012-11-19
抽烟的鱼
标签:

1. 实验要求及目的:

前面三个实验我们都只用到了LED,也就是输出。但是我们做的东西多半都是需要人机交互的,所以不能光是有输出,还应该有输入(其实前面也用到了输入,那就是时钟)。这个实验我们会用到按钮,通过按钮输入,判断逻辑,然后利用LED来显示出来逻辑输出结果。

这个实验主要是体会一下输入的用法,难度比较小。主要实现的是C=A •B这个功能。

使用软件:Quartus II 5.0。

2. 硬件原理图:

LED灯的原理图可以参考前面实验的图,就不再贴了。

我们这个实验用到两个按钮,BUT1和BUT2,分别对应实验板(REV.B)的78和77引脚。按钮平时的状态应该是高“1”,按下之后FPGA的引脚输入变成低“0”。输出为LED1,引脚为实验板(REV.B)的79引脚。

3. 程序设计

(1)设计分析:

(2)源程序exp4.v

程序代码:

// Base logic exp

// Designed By Smokingfish @ www.51FPGA.com zhiyuh@163.com

module exp4(led,a,b);

input a,b;

output led;

assign led=a&b;

endmodule

程序简单明了,不用我多讲什么吧,大家都应该明白是什么意思。这实际就是一个与门,如果有一个输入为0,那么输出就为0,这样就点亮了LED。

4. 实验步骤

(1)打开Quartus II软件,进入集成开发环境,点击File->New project wizard..新建工程项目exp4,直接点击Finish。

(2)点击File->New..在该项目下新建Verilog HDL源程序文件exp4.v,输入上面的源程序代码并保存。

(3)选择所用的FPGA器件----EP1C3T144C8,以及进行一些配置。

选择配置器件,如果要下载程序到EPCS1的话。

选择不需要使用的IO功能。选择As inputs,tri-stated。

点击两次ok,回到主界面。

(4)为工程项目锁定引脚:利用以下TCL文件为工程锁定引脚。

程序代码:

#Pin_Setup.tcl

# Setup pin setting

set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED"

set_global_assignment -name ENABLE_INIT_DONE_OUTPUT ON

set_location_assignment PIN_79 -to led

set_location_assignment PIN_78 -to a

set_location_assignment PIN_77 -to b

(5)编译工程项目:点击Processing->Start Compilation。

(6)仿真: 自己建立仿真文件检查自己的设计是否正确。

(7)下载目标文件到板子上:点击Tools->Programmer,选中Jtag模式,并且选中目标文件,然后点Start。

第四个实验结束了,很快吧,学到什么没有呢?不要说没有哦。

你也可以试着做一些其他的实验,比如非门,或门,38译码器等等,自己设计出来比跟着别人做更有意思的。

这个实验就不贴录像了,我只有两个手,不好拍。效果就是按下BUTTON1或者BUTTON2都能点亮LED1。

可能会用到的工具/仪表
相关文章
推荐文章
热门文章
章节目录
本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号