verilog编写四个按键控制一个数增减幅度的时候,只有最后一个else if里面的代码正常。
时间:10-02
整理:3721RD
点击:
- always@(posedge key_rst_debounce or posedge key_sub_debounce or posedge key_add_debounce or posedge key_sub10_debounce or posedge key_add10_debounce)
- // always@(*)
- begin
- if(key_rst_debounce==1)
- key_cnt<=`K_START;
- else
- begin
- if(key_sub_debounce==1)
- begin
- if(key_cnt<`K_START)
- key_cnt<=`K_END;
- else
- key_cnt<=key_cnt-1;
- end
- else if(key_add_debounce==1)
- begin
- if(key_cnt>`K_END)
- key_cnt<=`K_START;
- else
- key_cnt<=key_cnt+1;
- end
- else if(key_add10_debounce==1)
- begin
- if(key_cnt>`K_END)
- key_cnt<=`K_START;
- else
- key_cnt<=key_cnt+100;
- end
- else if(key_sub10_debounce==1)
- begin
- if(key_cnt<`K_START)
- key_cnt<=`K_END;
- else
- key_cnt<=key_cnt-100;
- end
- else
- key_cnt<=key_cnt;
- end
- end