教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

基于Verilog HDL的数字系统设计入门教程(CPLD篇)——第四天(3)

来源:网络收集 时间:2026-08-16
导读: CPLD,FPGA,Verilog,VHDL,数字系统, 基于 VerilogHDL 的数字系统设计入门教程(CPLD 篇)——第四天 系统断电后重新设置,这个时候我们就可以采用拨码开关。当然,我们还可以将拨码开关作 为系统的输入,实时修改这些

CPLD,FPGA,Verilog,VHDL,数字系统,

基于 Verilog HDL 的数字系统设计入门教程(CPLD 篇)——第四天  系统断电后重新设置,这个时候我们就可以采用拨码开关。当然,我们还可以将拨码开关作 为系统的输入,实时修改这些输入的值,使系统按照输入的参数值的模式运行程序。    拨码开关种类有很多,EDA/MCU 实验扩展板上使用的是 4 位拨码开关,这种开关每一 位对应一个输出,其状态是高电平“1”或低电平“0” 。    此外还有拨盘式,它有一个控制端,4 个输出端;每个拨盘有多个位置,每个位置对应 的输出为 4 位的 BCD 编码。    我们可以把拨码开关看做一种特殊的按键开关,只是在闭合和断开的状态有“锁存”而 已。  4.2实验扩展板上的独立式轻触开关原理图       CPLD 只需要检测连接到该拨码开关相应位的 IO 的电平即可获知其是否闭合,高电平代 表断开(使用的时候,白色的拨片拨到 ON 一端) ,低电平代表闭合(拨到靠近数字一端)  。   按照本教程一开始介绍的连接方法,实验扩展板上的拨码开关和 CPLD 的连接关系如下 表所示:  器件  S1_1  S1_2  S1_3  信号名  SW[0]  SW[1]  SW[2]  ~ 12 ~  CPLD 启蒙板对应引脚  78  81  82  线路人生|Circuitry 

CPLD,FPGA,Verilog,VHDL,数字系统,

基于 Verilog HDL 的数字系统设计入门教程(CPLD 篇)——第四天  S1_4  SW[3]  83 5. 实验二(拨码开关的使用) 5.1 实验要求   利用实验扩展板的 4 位拨码开关和 8 个 LED1 实现:当拨码开关的输入为二进制的 0000~1000 时,LED 的输入为其代表的 BCD 编码值(SW0 为 0,SW1 为 2,SW2 为 4,SW 为 8) ;当输入为二进制的 1001~1111 时,LED 全部熄灭(和 0000 的状态一样) 。 5.2实验目标   通过本实验,学会拨码开关作为系统的参数输入的方法;掌握利用 qsf 文件进行引脚锁 定的方法。 5.3  1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.源代码 本实验的功能较为简单,使用 case 语句即可实现,代码如下:  module SW_LED(SW,LED);        input  [3:0]SW;            output  [7:0]LED;           reg    [7:0]LED;             always @(SW)               begin    case(SW)                 4'b0001: LED = 8'b00000001;      4'b0010: LED = 8'b00000011;      4'b0011: LED = 8'b00000111;      4'b0100: LED = 8'b00001111;      4'b0101: LED = 8'b00011111;      4'b0110: LED = 8'b00111111;      4'b0111: LED = 8'b01111111;      4'b1000: LED = 8'b11111111;      default: LED = 8'b00000000;    endcase    end  endmodule              //模块名  //定义输入  //定义输出  //定义寄存器  //过程  //使用 case 语句实现目标功能  ~ 13 ~ 线路人生|Circuitry 

CPLD,FPGA,Verilog,VHDL,数字系统,

基于 Verilog HDL 的数字系统设计入门教程(CPLD 篇)——第四天 5.4实验步骤   (1)利用新项目向导在“D:\Tutorial\EPM570\DAY04\Exp02”目录下建立一个名为 “SW_LED”的项目,选择好相应的 CPLD 器件。    (2)新建三个 Verilog HDL 设计文件,输入 Verilog 代码分别设计并保存为 SW_LED.v。    (3)利用 qsf 文件,在编译前锁定引脚:    我们再打开前面一个实验项目的 DebounceLED.qsf 文档,这个文件保存了项目里面的很 多设置, 具体的说明大家可以参考 Quartus II 的帮助文档中的相应内容。 里面有这么几句 (省 略了部分代码) :  1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. set_global_assignment ‐name FAMILY "MAX II"  set_global_assignment ‐name DEVICE EPM570T100C5  ……………………  set_global_assignment ‐name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI‐STATED"  set_location_assignment PIN_40 ‐to LED[0]  set_location_assignment PIN_41 ‐to LED[1]  set_location_assignment PIN_42 ‐to LED[2]  set_location_assignment PIN_43 ‐to LED[3]  set_location_assignment PIN_47 ‐to LED[4]  set_location_assignment PIN_48 ‐to LED[5]  set_location_assignment PIN_49 ‐to LED[6]  set_location_assignment PIN_50 ‐to LED[7]   其中第 1 句设置项目所选的器件的系列——MAX  II;第 2 句是选择的项目所用的器件; 第 4 句是设置不用的引脚为三态输入,后面 8 句是锁定 LED 的到相应 CPLD 引脚。    我们再打开本实验项目的 qsf 文件,可以看到前面两句是有的,我们可以把后面 9 句加 到文件的末尾,此外再加上这么几句:  1. 2. 3. 4.   set_location_assignment PIN_78 ‐to SW[0]  set_location_assignment PIN_81 ‐to SW[1]  set_location_assignment PIN_82 ‐to SW[2]  set_location_assignment PIN_83 ‐to SW[3] 保存文件,我们再打开 Assignment Editor,可以看到,引脚已经锁定好了:   唯一的区别是以前我们没有编译项目之前, To 一列是没有办法显示项目中的引脚的, 在 现在前面有一个问号,而且已经锁定好了引脚。    锁定语句的格式大家可以自己总结一下, 稍微修改修改就可以用于其它的引脚了, 看看 后面我们加的 4 个 SW 引脚就是如此。    此外,我们也可以看到在 Device Pin Options 中的 Unused Pins 已经设置好了未用引脚的   ~ 14 ~  线路人生|Circuitry 

CPLD,FPGA,Verilog,VHDL,数字系统,

基于 Verilog HDL 的数字系统设计入门教程(CPLD 篇)——第四天  状态为三态输入:       (4)编译项目;  (5)下载到 CPLD 中观察实验结果:是否和我们设计的初衷一致? 5.5小结  …… 此处隐藏:2279字,全部文档内容请下载后查看。喜欢就下载吧 ……

基于Verilog HDL的数字系统设计入门教程(CPLD篇)——第四天(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/115981.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)