【发布时间】:2015-09-21 06:01:46
【问题描述】:
此代码应该在按下一个按钮时增加一个计数器(输出到 LED),并在按下另一个按钮时减少它。它可以在递减时正常工作,但在递增时会将 LED 更改为随机配置。
module LED_COUNTER( CLK_50M, LED, Positive, Negative );
input wire CLK_50M;
input wire Positive;
input wire Negative;
output reg[7:0] LED;
always@( posedge Positive or posedge Negative )
begin
if(Positive == 1)
LED <= LED + 1;
else
LED <= LED - 1;
end
endmodule
我正在使用这个板:http://www.ebay.com/itm/111621868286。引脚分配是:
在为按钮交换引脚分配后,行为保持不变。
【问题讨论】:
-
这可能最好在电子堆栈交换站点询问。
-
我认为它与编程比电子设计更相关。我使用带有参考设计的电路板,所以问题不是电子问题,而是编程问题。
-
严格来说,这还是硬件设计,不是编程。 Verilog 是一种硬件 描述语言,而不是一种编程(软件)语言。然而,这条线有些模糊。
-
如果硬件描述离题,为什么 VHDL 和 Verilog 标签会在 SO 上列出这么大的用户社区?
-
Verilog 和 VHDL 确实处于 SO 和 SE Electronics 的边缘。他们的设计模型和使用的工具确实比 SE:E 更好,但是当涉及到具有 ASIC/FPGA 或布局等的电路板和设计系统时,这些更好地放在 SE:E 中。因此,至少在我看来,如果它与 VHDL 或 Verilog 代码本身有关,它很适合 SO。如果它是与董事会相关的问题,那更适合 SE:E
标签: verilog fpga intel-fpga quartus