久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 超聲波精確測距 毫米級測距時間分辨率將如何改? [打印本頁]

作者: 渦輪ii    時間: 2017-8-14 13:24
標(biāo)題: 超聲波精確測距 毫米級測距時間分辨率將如何改?
  1. /***********************************************************************************************************/
  2. //HC-SR04 超聲波測距模塊 DEMO 程序
  3. //晶振:11.0592
  4. //接線:模塊TRIG接 P1.2  ECH0 接P1.1
  5. //串口波特率9600
  6. //精度為米級別的,毫米級測距時間分辨率將如何改?
  7. /***********************************************************************************************************/         
  8. #include"chao.h"

  9. unsigned int  time=0;
  10. unsigned int  timer=0;
  11. float         S=0;
  12. bit           flag =0;
  13.         
  14. /*******************************************************************************
  15. * 函 數(shù) 名       : Conut
  16. * 函數(shù)功能                 : 數(shù)據(jù)處理
  17. * 輸    入       : 無
  18. * 輸    出             : 距離S
  19. *******************************************************************************/
  20. float Conut(void)
  21. {
  22.         time=TH0*256+TL0;
  23.         TH0=0;
  24.         TL0=0;
  25.         S=(time*1.87)/100;     //算出來是CM
  26.         if(flag==1)                    //超出測量
  27.         {
  28.                 flag=0;
  29.                  S=0;
  30.                   return S;
  31.         }
  32.         return S;
  33. }

  34. /*******************************************************************************
  35. * 函 數(shù) 名       : delayms
  36. * 函數(shù)功能                 : 延時函數(shù)
  37. * 輸    入       : ms
  38. * 輸    出             : 無
  39. *******************************************************************************/
  40. void delayms(unsigned int ms)
  41. {
  42.         unsigned char i=100,j;
  43.         for(;ms;ms--)
  44.         {
  45.                 while(--i)
  46.                 {
  47.                         j=10;
  48.                         while(--j);
  49.                 }
  50.         }
  51. }

  52. /*******************************************************************************
  53. * 函 數(shù) 名       : StartModule
  54. * 函數(shù)功能                 : 啟動模塊
  55. * 輸    入       : 無
  56. * 輸    出             : 無
  57. *******************************************************************************/
  58. void  StartModule()                        
  59. {
  60.           Trig = 1;                                             //啟動一次模塊
  61.           _nop_();
  62.           _nop_();
  63.           _nop_();
  64.           _nop_();
  65.           _nop_();
  66.           _nop_();
  67.           _nop_();
  68.           _nop_();
  69.           _nop_();
  70.           _nop_();
  71.           _nop_();
  72.           _nop_();
  73.           _nop_();
  74.           _nop_();
  75.           _nop_();
  76.           _nop_();
  77.           _nop_();
  78.           _nop_();
  79.           _nop_();
  80.           _nop_();
  81.           _nop_();
  82.           Trig = 0;
  83. }

  84. /*******************************************************************************
  85. * 函 數(shù) 名       : ChaoShengBoInit
  86. * 函數(shù)功能                 : 超聲波模塊初始化函數(shù),允許T0中斷,開啟定時器,開啟總中斷
  87. * 輸    入       : 無
  88. * 輸    出             : 無
  89. *******************************************************************************/
  90. void ChaoShengBoInit()
  91. {
  92.         TMOD=0x21;                   //設(shè)T0為方式1,GATE=1;
  93.         SCON=0x50;
  94.         TH1=0xFD;
  95.         TL1=0xFD;
  96.         TH0=0;
  97.         TL0=0;
  98.         TR0=1;  
  99.         ET0=1;             //允許T0中斷
  100.         TR1=1;                           //開啟定時器
  101.         TI=1;
  102.         EA=1;                           //開啟總中斷
  103. }

  104. /*******************************************************************************
  105. * 函 數(shù) 名       : CaiJi
  106. * 函數(shù)功能                 : 超聲波數(shù)據(jù)采集并轉(zhuǎn)換為數(shù)字信號
  107. * 輸    入       : 無
  108. * 輸    出             : 無
  109. *******************************************************************************/
  110. void CaiJi(void)
  111. {  
  112.          StartModule();
  113.          while(!Echo);                //當(dāng)RX為零時等待
  114.          TR0=1;                            //開啟計數(shù)
  115.          while(Echo);                //當(dāng)RX為1計數(shù)并等待
  116.          TR0=0;                                //關(guān)閉計數(shù)
  117.      Conut();                        //計算
  118.          delayms(100);                //100MS

  119. }  

復(fù)制代碼

作者: 滄浪    時間: 2017-8-20 00:08
網(wǎng)上看的一些資料說這個模塊精準(zhǔn)度最大也就在在3mm,自己實際用過達(dá)到這么高的精確度,如果非要那么高的精確度的話是不是需要采取補(bǔ)償手段。
作者: zl2168    時間: 2017-8-21 10:16
超聲波傳遞速率與介質(zhì)、溫度有關(guān)。探測精度有絕對精度和相對精度之分,把概念搞清楚。什么3mm?如果是倒車測距,絕對精度也就是0.5cm.




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲第一av网站 | 久久激情视频 | 在线观看的av | 久久精品久久久久久 | av片免费 | 黄网站在线观看 | 国产美女一区二区 | 亚洲欧洲在线看 | 亚洲传媒在线 | 日韩欧美黄色 | 91精品国产91久久久久久最新 | 天天综合永久入口 | 国产精品一区久久久 | 黄色成人免费看 | 日本精品久久 | 日日爱夜夜操 | 亚洲一区二区在线视频 | 爱爱免费视频 | 国产在线精品一区二区三区 | 欧美日韩一区二区三区四区 | 2022精品国偷自产免费观看 | 欧美日韩一卡二卡 | 亚洲3级 | 日韩欧美国产电影 | 偷派自拍| 能看的av | 狠狠影院 | 国产精品一区二区三区在线 | 国产一区二区免费 | 成人精品一区二区三区四区 | 国产在线永久免费 | 欧美久久一级 | www.性色| 亚洲欧美视频一区二区 | 日本三级电影在线免费观看 | 久久久久国产精品www | 国产精品一区在线观看 | 在线国产一区 | 精品视频在线播放 | 91一区二区三区在线观看 | 91资源在线 |