- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[eda流水灯实验报告
1. 实验目的
1.通过此实验让用户进一步了解、熟悉和掌握CPLD/FPGA开发软件的使用方法及VHDL的编程方法,熟悉以Herilong HDL文件为顶层模块的设计。
2.学习和体会分支条件语句casc的使用方法及FPGA I/O口的输出控制。
2. 实验内容
SmartSOPC实验箱上有8个按键KEY1~KEY8和8个发光二极管LED1~LED8。在SmartSOPC实验箱上KEY1~KEY8通过跳线JP6的LED1~LED8分别于芯片的121~124、143、141、158、和156引脚相连。
本实验的内容是要求在SmartSOPC实验箱上完成对8个键盘KEY1~KEY8进行监控,一旦有键输入判断其键值,并点亮相应的发光二极管,如若KEY3按下,则点亮LED1~LED3发光管并且在放开时也能保持亮的状态。
3. 实验原理
FPGA的所有I/O控制块允许每个I/O引脚单独置为输入口,不过这种配置是系统自动完成的,一旦该I/O口被设置为输入口使用时,该 I/O控制模块将直接使三态缓冲区的控制端接地,使得该 I/O引脚对外呈高阻态,这样改 I/O引脚即可用作专用输入引脚。只要正确分配并锁定引脚后,一旦在KEY1~KEY8中有键输入,在检测到键盘输入的情况下,继续判断其键盘值并作出相应的处理。
最后拿出跳线短接帽跳接到JP6的LED1~LED7、KEY1~KEY8使LED1~LED8和KEY1~KEY8和芯片对应的引脚相连。拿出Altera ByteBlasterⅡ下载电缆,并将此电缆的两端分别接到PC机的打印机并口和QuickSOPC核芯板上的JTAG下载口上,打开电源,执行下载命令,把程序下载到FPGA器件中,按下KEY1~KEY8的任意键,观察LED1~LED8的状态。
4. 实验步骤
1.启动QuartusⅡ建立一个空白工程,然后命名为keyboard 。
2.源程序文件命名为keyboard ,并选择器件为Altera公司Cyclone系列的EPIC12Q240C8芯片,如图1—1
图1—1
3.新建Veriog HDL源程序文件,输入程序代码并保存。再进行综合编译,若发现编译过程中有错误1—2(1),则找出并更正错误,直到编译成功为止。如图1—2(2)就表示编译成功了(warings可以不考虑)。
图1—2(1)
图1—2(2)
4.对引脚进行锁定。通过选择[Assignments]下的[pins]。分配好管脚如图1—3所示。
图1—3
5.将未使用的管脚设置为三输入。以防止损坏芯片如图1—4所示。
图1—4
6. 最后拿出跳线短接帽跳接到JP6的LED1~LED7、KEY1~KEY8使LED1~LED8和KEY1~KEY8和芯片对应的引脚相连。拿出Altera ByteBlasterⅡ下载电缆,并将此电缆的两端分别接到PC机的打印机并口和QuickSOPC核芯板上的JTAG下载口上,打开电源,执行下载命令,把程序下载到FPGA器件中(如图1-5),按下KEY1~KEY8的任意键,观察LED1~LED8的状态。
图1—5在点[Start]即可下载烧录了。
5. 实验程序
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity keyboard is
port(key_8bit:IN std_logic_vector(7 downto 0);
led_8bit:OUT std_logic_vector(7 downto 0));
end keyboard;
architecture keyboard of keyboard is
signal tmp: std_logic_vector(7 downto 0);
begin
process(key_8bit)
begin
case key_8bit is
whentmp
whentmp
whentmp
whentmp
whentmp
whentmp
whentmp
whentmp
when other
文档评论(0)