【发布时间】:2016-09-14 12:23:13
【问题描述】:
我试图理解here找到的这个示例代码
module LED_PWM(clk, PWM_input, LED);
input clk;
input [3:0] PWM_input; // 16 intensity levels
output LED;
reg [4:0] PWM;
always @(posedge clk) PWM <= PWM[3:0]+PWM_input;
assign LED = PWM[4];
endmodule
首先,它创建 4 位寄存器 PWM_input 和 5 位寄存器 PWM。然后在每个时钟周期将 PWM 设置为自身的 3 位加上 PWN_input。
这里到底发生了什么?为什么只使用 5 位 PWM 中的 4 位,PWM_input 的值是多少?
实际控制 LED 时,是将 LED 设置为 PWM[4]。和 PWM[4:0] 一样吗?还是它是一个独立的值?
【问题讨论】: