找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2518|回復: 3
打印 上一主題 下一主題
收起左側

STM32超聲波測距的計算問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:650067 發(fā)表于 2020-5-25 13:49 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
請問一下大家,我用超聲波模塊測距,超聲波模塊是HC_SR04,但是我在計算距離有點問題請教大家,get counter獲得的值不是要除以1000 000嗎(轉換成秒)再乘340/2得到距離嗎,為什么我的程序除以1000 000通過串口打印的是0,改成除以100就可以,而且為什么我測出來的值是整數的?
我是STM32F103RCT6的。

51hei圖片_20200525134343.png (33.97 KB, 下載次數: 40)

主函數

主函數

51hei圖片_20200525134359.png (71.4 KB, 下載次數: 42)

超聲波模塊函數

超聲波模塊函數

51hei圖片_20200525135110.png (53.37 KB, 下載次數: 40)

配置定時器

配置定時器

project.7z

185.02 KB, 下載次數: 13

這是工程文件

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

使用道具 舉報

沙發(fā)
ID:682488 發(fā)表于 2020-5-25 16:07 | 只看該作者
你這個是求余,試試先把乘法放在前面;并且先不考慮單位問題,看看能不能出現想要的數字
回復

使用道具 舉報

板凳
ID:98195 發(fā)表于 2020-5-25 19:49 來自手機 | 只看該作者
你定義沒問題吧?int類型最大為65536   char為255
回復

使用道具 舉報

地板
ID:426480 發(fā)表于 2020-5-26 15:00 | 只看該作者
定義 n,T,V,X;
n:計數個數
T:定時器計時時間 50(ms)=0.05(s)
V:聲速 340(m/s)
X:位移  (距離)
公式:n*T*V/2=X     //聲波有來回,時間除以2  return TIM_GetCounter(TIM2)*0.05*34000(cm/s)/2
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表