基于FPGA的超声波测距(一)
0赞
发表于 2014/1/17 14:01:31
阅读(2636)
硬件平台:CycloneII EP2C5Q208C8+DYP-ME007
1:超声波原理
DYP-ME007超声波测距模块可提供3cm--3.5m的非接触式距离感测功能,图1为DYP-ME007外观,包括超声波发射器、接收器与控制电路。其基本工作原理为给予此超声波测距模块一触发信号后发射超声波,当超声波投射到物体而反射回来时,模块输出一回响信号,以触发信号和回响信号间的时间差,来判定物体的距离。
距离计算:s=ct/2,c为声速,t为echo的时间宽,和上面的公式是基本一致的。
2:FPGA设计
module sonic(clk,rst_n,trig);
input clk,rst_n;
output trig;
reg [21:0]cnt_period;
always @(posedge clk )
begin
if(!rst_n)
cnt_period<=0;
else if(cnt_period==22'd3000000)
cnt_period<=0;
else
cnt_period<=cnt_period+1'b1;
end
assign trig=((cnt_period>=22'd100)&(cnt_period<=22'd599))?1:0;
endmodule
硬件接线:
我这个例子里面还没有使用echo接到fpga,只是用示波器看echo的波形,下个实验才来测距。