always@(*)
if(!rst_n)
next_state<=IDLE;
else
case(cur_state)
IDLE :begin
next_state=TRIG;
end
TRIG :begin
if(cnt==TIME_10us-1)
next_state=ECHO;
else
next_state=cur_state;
end
ECHO :begin
if(cnt==TIME_80ms-1)
next_state=IDLE;
else
next_state=cur_state;
end
endcase
这一小段代码只是状态机的一部分
代码太少,没办法描述代码的实际意思
这块儿是针对超声波测距模块上电初始化的状态机,可以看一下超声波模块的用户手册就知道里面涉及到的数字的含义了