Vivado 2015.4 四个开关控制 LED 亮灭程序设计教程
以下是实现该功能的步骤:
-
创建一个新工程,并在工程中添加一个设计源文件(Verilog 或 VHDL)和一个约束文件(XDC 文件)。
-
在设计源文件中定义一个模块,该模块包含四个输入端口和一个输出端口。输入端口连接到四个开关,输出端口连接到 LED 灯。
-
在约束文件中定义开关和 LED 灯的引脚。例如,如果开关连接到 FPGA 开发板上的 GPIO_0 到 GPIO_3 引脚,LED 灯连接到 GPIO_4 引脚,则约束文件应包含以下内容:
set_property -dict { PACKAGE_PIN W5 IOSTANDARD LVCMOS33 } [get_ports { switch_0 }]
set_property -dict { PACKAGE_PIN W6 IOSTANDARD LVCMOS33 } [get_ports { switch_1 }]
set_property -dict { PACKAGE_PIN U9 IOSTANDARD LVCMOS33 } [get_ports { switch_2 }]
set_property -dict { PACKAGE_PIN U10 IOSTANDARD LVCMOS33 } [get_ports { switch_3 }]
set_property -dict { PACKAGE_PIN U16 IOSTANDARD LVCMOS33 } [get_ports { led }]
- 在设计源文件中编写代码,以根据开关的状态控制 LED 灯的亮度。例如,以下是一个 Verilog 代码示例:
module switch_led(input switch_0, input switch_1, input switch_2, input switch_3, output reg led);
always @(*) begin
if (switch_0 && switch_1 && switch_2 && switch_3) // 所有开关都打开
led = 1;
else if (switch_0 && switch_1) // 前两个开关打开
led = 0.75;
else if (switch_2 && switch_3) // 后两个开关打开
led = 0.5;
else if (switch_0 && switch_2) // 第1个和第3个开关打开
led = 0.25;
else
led = 0;
end
endmodule
-
合成设计和实现布局,并生成比特流文件。
-
下载比特流文件到 FPGA 开发板上,并测试程序是否正常工作。
这样,您就成功地设计了一个用四个开关控制 LED 灯亮灭的程序。
原文地址: https://www.cveoy.top/t/topic/nilV 著作权归作者所有。请勿转载和采集!