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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

自學HC-SR04超聲波模塊 附Arduino程序 UART iic GPIO

[復制鏈接]
跳轉到指定樓層
樓主
ID:1109414 發表于 2024-1-16 16:45 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
使用的硬件:STM32F103C8T6,HC-SR04,ST-Link(其他燒錄器也可以),0.96寸OLED屏幕(非必須,僅供顯示測距結果,可以使用串口助手代替),若干杜邦線。

涉及操作stm32的GPIO口,外部中斷,定時器,本文中不會詳細解釋,僅提供代碼思路。

源程序:
  1. /*
  2. 模塊:          帶UART功能的HC-SR04(2020款)系列超聲波測距模塊   
  3. 主控芯片:      RCWL-9300系列
  4. 功能:          串口模式下讀取HC-SR04(2020款)系列超聲波測距模塊距離數據并串口顯示
  5. 注意:          HC-SR04(2020款)系列模塊選擇成UART模式,即模式選擇UART。
  6. 編寫:          無錫日晨物聯科技有限公司
  7. 方案定制:      18851501095
  8. 串口數據格式:  RCWL-1661串口輸出3位8BIT數據,距離MM值=24位數據轉換成10進制/10000。
  9. 連線:
  10.    -VCC          = 5V /3.3V/3-40V   
  11.    -TRIG/RX/SCL  = A5
  12.    -ECHO/TX/SDA  = A4
  13.    -GND          = GND
  14. */
  15. #include "SoftwareSerial.h"
  16. SoftwareSerial mySerial(A4, A5);    // A4為RX, A5為TX;  A4接模塊TX,A5接模塊RX
  17. float     Data_h = 0;                 //高8位數據
  18. float     Data_m = 0;                 //中8位數據
  19. float     Data_l = 0;                 //低8位數據
  20. float     distance = 0;               //距離數據十進制值

  21. void setup()
  22. {
  23.   Serial.begin(9600);                //定義串口波特率9600 出廠默認波特率9600
  24.   mySerial.begin(9600);               //定義模擬串口波特率
  25.   Serial.println("HC-SR04(2020款) 測距開始:");
  26. }

  27. void loop()
  28. {
  29.     Data_h = 0;
  30.     Data_m = 0;   
  31.     Data_l = 0;
  32.     distance=0;
  33.     mySerial.flush();                     //清模擬串口緩存數據
  34.     mySerial.write(0XA0);                 //發送開始測試數據0XA0,0XA0為開始測試命令數據
  35.    delay(120);                            //測量周期延時,一個周期為100mS,設置120MS,留余量   
  36.    if (mySerial.available()>0)            //等待接收完3個數據
  37.    {
  38.     Data_h= mySerial.read();              //讀取緩存數據
  39.     Data_m= mySerial.read();
  40.     Data_l= mySerial.read();
  41.    }
  42.   else
  43.    {
  44.     Data_h= 0;                             //讀取緩存數據
  45.     Data_m= 0;
  46.     Data_l= 0;     
  47.     }
  48.    distance=(Data_h*65536+Data_m*256+Data_l)/10000;   //計算成CM值     
  49.    Serial.print("距離 : ");
  50.    if ((1<=distance)&&(900>=distance))     //1CM-9M之間數值顯示
  51.     {
  52.    Serial.print(distance);
  53.    Serial.print(" CM ");  
  54.     }
  55.    else
  56.     {
  57.    Serial.print(" - - - - ");             //無效數值數值顯示 - - - -
  58.     }
  59.    Serial.println();   
  60. //   delay(100);                             //調節測量周期  
  61. }
復制代碼

原理圖: 無
仿真: 無
代碼: HC-SR04(2020款)ARDUINO測試資料.7z (48.02 KB, 下載次數: 13)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 九九伊人sl水蜜桃色推荐 | 成人福利电影 | 在线成人av | 成人精品鲁一区一区二区 | 精品视频在线免费观看 | 免费国产视频 | 国产成人精品视频 | 免费一区 | 日本福利视频 | 日韩精品中文字幕在线 | 黄色毛片在线观看 | 羞羞的视频免费观看 | 国产精品久久久久久久久免费高清 | 国产一二三区精品视频 | 成人免费视频观看 | 亚洲一区中文字幕 | 欧美日本一区 | 国产欧美精品一区二区色综合朱莉 | 国产欧美久久一区二区三区 | 青草青草久热精品视频在线观看 | 日本精品一区二区 | 午夜精品在线 | 久久久精品视频一区二区三区 | 高清国产午夜精品久久久久久 | 人人九九精| 亚洲成人精品国产 | www.亚洲一区二区三区 | 午夜精品久久久久久久久久久久 | 韩国av电影网 | 久久高清免费视频 | 国产观看 | 亚洲视频二区 | 午夜寂寞影院在线观看 | 在线午夜 | 日本一道本 | 成人精品一区二区 | 婷婷色国产偷v国产偷v小说 | www久久久 | 在线观看成年人视频 | 91成人免费电影 | 在线日韩欧美 |