SPI发送 1ms采样 AD转换 2倍放大 二阶滤波 10KHz
/************比较器:一样输出一否则为零**************/
module compare(equal,a,b);
input a,b;
output equal;
assign equal=(a==b)?1:0;
endmodule
/*************分频器,2分频***********/
module half_clk(reset,clk_in,clk_out)
input reset, clk_in;
output clk_out;
reg clk_out;
always@ (posedge clk_in)
begin
if(!reset)clk_out=0;
else clk_out=~clk_out;
end
endmodule
/************20分频***************/
module division(reset,f1,f2);
input reset,f1;
output f2;
reg f2;
reg [7:0]j;
always@(posedge f1)
if(!reset)
begin
f2<=0;
j=0;
end
else
begin
if(j==19)
begin
j=0;
f2=~f2;
end
else
j<=j+1;
end
endmodule
/***************函数调用的例子****************/
/***阶乘的例子********/
module functional(clk,reset,result);
input clk,reset;
output [31;0]result;
reg [31;0]result;
always@(posedge clk)
begin
if(!reset)