找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5273|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

(資料分享)51單片機(jī)超聲波測距時發(fā)現(xiàn)只測一次或幾次數(shù)據(jù)就會陷入死循環(huán),現(xiàn)已解決。

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
在設(shè)置發(fā)送模式后,有時程序會停留在等待ECHO引腳置1這個while循環(huán)里出不來,只要在這個循環(huán)里加入防死循環(huán)跳出程序即可,此外在設(shè)置發(fā)送模式成功以后收不到反射回來的信號的while等待中也需要加入防死循環(huán)語句。 。 。附上完整程序。

超聲波測距(LCD1602顯示).zip

67.46 KB, 下載次數(shù): 77, 下載積分: 黑幣 -5

實(shí)測解決只測一次或幾次問題

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

來自 5#
ID:482935 發(fā)表于 2020-5-5 15:36 來自手機(jī) | 只看該作者
樓主牛逼!當(dāng)初做超聲波實(shí)驗(yàn)的時候就想到這個問題了。。。但是倒是一直沒發(fā)生死循環(huán)卡住的問題就沒太在意。 另外樓主如果沒有收到echo的1的話,可能是因?yàn)橐婚_始20微秒的啟動方波給的時常不夠,再多給點(diǎn)延時看看。還有我把這個hcsr04朝天射過,感覺它一定時間(很長時間,超過量程最大時間)之后,echo引腳好像必定會置1的,然后根據(jù)長短時間再變0。 我看了hcsr04內(nèi)部也是個單片機(jī),估計里面程序有防止沒回波置1的保障的,也就是只要啟動發(fā)射超聲波了,長時間后echo必定會給個置1。
回復(fù)

使用道具 舉報

沙發(fā)
ID:271725 發(fā)表于 2019-3-14 21:06 | 只看該作者
有三個警告
回復(fù)

使用道具 舉報

板凳
ID:345548 發(fā)表于 2019-8-18 10:25 | 只看該作者
不錯,方法可行,不過我建議在第一張圖里for語句即可實(shí)現(xiàn),執(zhí)行效率會高點(diǎn),因?yàn)槲业闹袛嘀衒lag=1,所以取的反,可供參考

51hei瀏覽器截圖20190818102440.png (4.46 KB, 下載次數(shù): 76)

51hei瀏覽器截圖20190818102440.png
回復(fù)

使用道具 舉報

地板
ID:91402 發(fā)表于 2020-1-20 16:16 | 只看該作者
bluewn 發(fā)表于 2019-8-18 10:25
不錯,方法可行,不過我建議在第一張圖里for語句即可實(shí)現(xiàn),執(zhí)行效率會高點(diǎn),因?yàn)槲业闹袛嘀衒lag=1,所以取 ...

程序用的好特別
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表