仲裁模块代码:
- // 外设控制模块,根据uart接收到的数据,控制led与beep的标志信号。
- module arbit(
- input wire sys_clk ,
- input wire sys_rst_n ,
- input wire pi_flag ,
- input wire [7:0] pi_data ,
-
- output reg led_flag ,
- output reg beep_flag
- );
- parameter LED_NUM = 8'h11 ,
- BEEP_NUM = 8'h22 ;
- always @(posedge sys_clk or negedge sys_rst_n) begin
- if(~sys_rst_n)
- led_flag <= 1'b0 ;
- else if(pi_flag && (pi_data == LED_NUM))
- led_flag <= 1'b1 ;
- else
- led_flag <= 1'b0 ;
- end
- always @(posedge sys_clk or negedge sys_rst_n) begin
- if(~sys_rst_n)
- beep_flag <= 1'b0 ;
- else if(pi_flag && (pi_data == BEEP_NUM))
- beep_flag <= 1'b1 ;
- else
- beep_flag <= 1'b0 ;
- end
- endmodule