always @(posedge clk or negedge rst_n) begin if(!rst_n) begin cnt <= 1'b0; lcd_clk_en <= 1'b0; end else if(cnt == 32'd24999) //500us begin lcd_clk_en <= 1'b1; cnt <= 1'b0; end else begin cnt <= cnt + 1'b1; lcd_clk_en <= 1'b0; end end
always@(posedge clk or negedge rst_n) begin if(!rst_n) begin state <= 10'd0;
end else if(lcd_clk_en) begin case(state) //-------------------init_state--------------------- 10'd0: begin WriteCmd(8'h30); state <= 10'd1; end
////////////////////////////////////////// 10'd1: begin WriteCmd(8'h03); state <= 10'd2; end
/////////////////////////////////////////////// 10'd2: begin WriteCmd(8'h0c); state <= 10'd3; end
10'd3: begin WriteCmd(8'h01); state <= 10'd4; end
10'd4: begin WriteCmd(8'h06); state <= 10'd5; end
////////////////////////画横线 10'd5: begin WriteCmd(8'h34); WriteCmd(8'h36); state <= 10'd6; end
10'd6: begin WriteCmd(8'h80); WriteCmd(8'h80); WriteFF; WriteCmd(8'h81); WriteCmd(8'h80); Write00; state <= 10'd7; end
10'd7: begin WriteCmd(8'h82); WriteCmd(8'h80); WriteFF; WriteCmd(8'h83); WriteCmd(8'h80); Write00; state <= state + 1'd1; end
10'd8: begin WriteCmd(8'h84); WriteCmd(8'h80); WriteFF; WriteCmd(8'h85); WriteCmd(8'h80); Write00; state <= state + 1'd1; end
10'd9: begin WriteCmd(8'h86); WriteCmd(8'h80); WriteFF; WriteCmd(8'h87); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd10: begin WriteCmd(8'h88); WriteCmd(8'h80); WriteFF; WriteCmd(8'h89); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd11: begin WriteCmd(8'h8A); WriteCmd(8'h80); WriteFF; WriteCmd(8'h8B); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd12: begin WriteCmd(8'h8C); WriteCmd(8'h80); WriteFF; WriteCmd(8'h8D); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd13: begin WriteCmd(8'h8E); WriteCmd(8'h80); WriteFF; WriteCmd(8'h8F); WriteCmd(8'h80); Write00; state <= state + 1'd1; end
10'd14: begin WriteCmd(8'h90); WriteCmd(8'h80); WriteFF; WriteCmd(8'h91); WriteCmd(8'h80); Write00; state <= 10'd7; end
10'd15: begin WriteCmd(8'h92); WriteCmd(8'h80); WriteFF; WriteCmd(8'h93); WriteCmd(8'h80); Write00; state <= state + 1'd1; end
10'd16: begin WriteCmd(8'h94); WriteCmd(8'h80); WriteFF; WriteCmd(8'h95); WriteCmd(8'h80); Write00; state <= state + 1'd1; end
10'd17: begin WriteCmd(8'h96); WriteCmd(8'h80); WriteFF; WriteCmd(8'h97); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd18: begin WriteCmd(8'h98); WriteCmd(8'h80); WriteFF; WriteCmd(8'h99); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd19: begin WriteCmd(8'h9A); WriteCmd(8'h80); WriteFF; WriteCmd(8'h9B); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd20: begin WriteCmd(8'h9C); WriteCmd(8'h80); WriteFF; WriteCmd(8'h9D); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd21: begin WriteCmd(8'h9E); WriteCmd(8'h80); WriteFF; WriteCmd(8'h9F); WriteCmd(8'h80); Write00; state <= state + 1'd1; end 10'd22: begin WriteCmd(8'h32); state <= state + 1'd1; end 10'd23: begin // state <= state + 1'd1; end 10'd24: begin //stb <= 1'b1;
state <= 10'd24; end //////////////////////////////////////////////