硬件平臺: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的波形,下個實驗纔來測距。