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 -