Page 686 - 3-2
P. 686

output reg sig_f;
            output reg [3:0]state;
            output [1:0]dcmotor3;
            output [3:0] led;


            reg [7:0]sw_buff1,sw_buff2;
            reg [31:0]buff_cnt,buff_cnt2;
            reg [31:0]time_cnt,time_cnt2;
            reg [1:0]flag;


            assign led[3:0]=~state;
            assign dcmotor3[1] = (flag==0)?0:(flag==1)?1:0;
            assign dcmotor3[0] = (flag==0)?1 :(flag==1)?0:0;


            parameter idle=0, right=1, right_stop=2, up=3, front=4, back=5, down=6, left=7,finish=8;


            always @ (posedge clk,negedge rst)
            begin
                    if(!rst) sig<=0;
                    else
                    begin
                            if(rx_data[6:0]==7'h41)sig<=1;
                            else if(sig_f==1&&state==idle) sig<=0;
                    end
            end
            always @(posedge clk, negedge rst) // 채터링
            begin
                    if(!rst)begin sw_buff1<=0; sw_buff2<=0; end
                    else
                    begin
                            sw_buff1<={sw_buff1[6:0],sw1};
                            sw_buff2<={sw_buff2[6:0],sw2};
                    end
            end


            always @(posedge clk, negedge rst)
            begin
                    if(!rst)
                    begin
                            state<=idle;
                            flag<=2;
                            buff_cnt<=0;
                            buff_cnt2<=0;
                            time_cnt<=0;
                            time_cnt2<=0;


                                                         - 686 -
   681   682   683   684   685   686   687   688   689   690   691