Page 291 - 3-2
P. 291

end


                    always @ (posedge clk, negedge reset)
                    if(!reset) s_cnt<=0;
                    else
                    begin
                            if(clk_uart==1&&!tx_empty)
                            begin
                                    if(tx_cnt==9)
                                    begin
                                            if(s_cnt)
                                                    s_cnt <= 0;
                                            else
                                                    s_cnt <= 1;
                                                    end
                                    else
                                            s_cnt<=s_cnt;
                            end
                    end
            endmodule


            //fnd.v
            module fnd(clk,reset,fnd_data,fnd_en,fnd_sel,string);


            input clk,reset;
            output reg [6:0] fnd_data;      // fnd 에 표시할 숫자 data     출력선(dog,g,f,e,...a)
            output reg fnd_en;      // fnd_data  출력을 위한 enable     신호출력선
            output reg [1:0] fnd_sel;       // fnd  자리 선택을 위한 신호 출력


            reg [27:0]scan_cnt;     // fnd  스캔 신호 발생을 위한 카운터 변수
            reg [3:0]fnd_num;       // fnd 에 표시할 숫자
            reg digit=0;    // fnd  자리 선택신호로 사용(0~3)
            reg clk_200hz;
            reg [5:0]tim;


            input [15:0] string;


            wire [3:0] num1,num10;


            // fnd enable  제어 회로
            always@(posedge clk, negedge reset)
                    if(!reset) fnd_en <= 1'b1;
                    else    fnd_en <= 1'b0; // fnd_data  출력


            // FND  스캔주파수 만들기(200Hz) 250000


                                                         - 291 -
   286   287   288   289   290   291   292   293   294   295   296