sum_control.v

来自「步进电机位置系统 步进电机位置系统block symbol file 步进电」· Verilog 代码 · 共 46 行

V
46
字号
module sum_control(
					Reset,
					pulse_sum_in,
					step_sum,
					wave_out
					);

output wave_out;
input  Reset;
input  [23:0] step_sum; //总脉冲数(由步进电机走的总路程决定)
input  pulse_sum_in;


reg [23:0] step_counter;
reg out_control;


always @(posedge pulse_sum_in)
begin
  if(Reset == 1'b1)
  begin
    step_counter <= 24'b0;
    out_control  <= 1'b0;
  end
  else
  begin
    if(step_counter == (step_sum - 24'b1))
      out_control  <= 1'b0;
    else if(step_counter == 24'b111111111111111111111111)
      step_counter <= 24'b0;
    else
    begin
      step_counter <= step_counter + 24'b1;
      out_control  <= 1'b1;
    end       
  end 
end


assign wave_out = pulse_sum_in && out_control;


endmodule


//((step_sum && 24'b111111111111111111111101) + 24'b1)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?