91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CW32L012/F030靈眸X1智能小車——超聲波模塊配置

CW32生態(tài)社區(qū) ? 來源:CW32生態(tài)社區(qū) ? 作者:CW32生態(tài)社區(qū) ? 2026-01-05 16:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

超聲波模塊介紹

SR04超聲波模塊是一款廣泛應(yīng)用的測距傳感器,主要用于使用超聲波測量物體與傳感器之間的距離。它是一個成本低廉、精度較高且易于使用的傳感器,常用于機器人、智能家居無人機、汽車防撞系統(tǒng)等項目。以下是SR04超聲波模塊的主要特點和應(yīng)用:

測距范圍: SR04模塊的測距范圍通常在2厘米到400厘米之間,適合多種應(yīng)用。

高精度: 它具備較好的測量精度,通??蛇_±3毫米,這使其適用于需要精確測量的場合。

工作原理: SR04模塊通過發(fā)射超聲波脈沖并測量聲波反射回來的時間來計算距離。傳感器的超聲波發(fā)射和接收分別由兩個探頭(發(fā)射器和接收器)完成。

簡單接口: 通常使用簡單的GND、VCC、Trig(觸發(fā)信號)和Echo(回聲信號)四個引腳,便于連接到微控制器(如Arduino)上。

低功耗: 在待機狀態(tài)下,SR04的功耗較低,適合電池供電的項目。

超聲波模塊工作原理

圖片

只需要在 Trig 管腳(觸發(fā)信號)輸入一個 10US 以上的高電平,系統(tǒng)便可發(fā)出 8 個 40KHZ 的超聲波脈沖,然后檢測回波信號。當檢測到回波信號后,通過 Echo 管腳輸出。根據(jù) Echo 管腳輸出高電平的持續(xù)時間可以計算距離值。即距離值為:(高電平時間*340m/s)/2。

當測量距離超過 HC-SR04 的測量范圍時,仍會通過 Echo管腳輸出高電平的信號,高電平的寬度約為 66ms。如圖所示:

圖片

測量周期:當接收到 HC-SR04 通過 Echo 管腳輸出的高電平脈沖后,便可進行下一次測量,所以測量周期取決于測量距離,當距離被測物體很近時,Echo 返回的脈沖寬度較窄,測量周期 就很短;當距離被測物體比較遠時,Echo 返回的脈沖寬度較寬,測量周期也就相應(yīng)地變長。最壞情況下,被測物體超出超聲波模塊的測量范圍,此時 返回的脈沖寬度最長,約為 66ms,所以最壞情況下的測量周期稍大于 66ms 即可(取 70ms 足夠)。

電路連接

該模塊在主控制板上與CW32L012/F030連接如下:

圖片

兩個引腳分別接到了PA8與PA15端口。

工程代碼

在文件HC_SR04.C中編寫如下代碼

#define Trig_Send(x)                GPIO_WritePin(CW_GPIOA, GPIO_PIN_8, (GPIO_PinState)(x))
#define Echo_Input                        GPIO_ReadPin(CW_GPIOA, GPIO_PIN_15)
uint16_t Get_Time;
/**************************
定時器配置
中斷周期為1ms
**************************/
void TIM_Init(void)
{
        RCC_APBPeriphClk_Enable2(RCC_APB2_PERIPH_BTIM,ENABLE);

        BTIM_TimeBaseInitTypeDef BTIM_Initstructure;
        BTIM_Initstructure.BTIM_Mode=BTIM_Mode_TIMER;
        BTIM_Initstructure.BTIM_OPMode=BTIM_OPMode_Repetitive;
        BTIM_Initstructure.BTIM_Period=1000-1;
        BTIM_Initstructure.BTIM_Prescaler=BTIM_PRS_DIV64;//64分頻
        BTIM_TimeBaseInit(CW_BTIM1,&BTIM_Initstructure);

        BTIM_ITConfig(CW_BTIM1,BTIM_IT_OV,ENABLE);
//        BTIM_Cmd(CW_BTIM1,ENABLE);
        NVIC_SetPriority(BTIM1_IRQn,8);//中斷優(yōu)先級
        NVIC_EnableIRQ(BTIM1_IRQn);//開啟中斷
}
void HC_SR04_Init(void)
{
        __RCC_GPIOA_CLK_ENABLE();

        GPIO_InitTypeDef GPIO_InitStruct;
        GPIO_InitStruct.IT=GPIO_IT_NONE;
        GPIO_InitStruct.Mode=GPIO_MODE_OUTPUT_PP;
        GPIO_InitStruct.Pins=GPIO_PIN_8;
        GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
        GPIO_Init(CW_GPIOA, &GPIO_InitStruct);

        GPIO_InitStruct.IT=GPIO_IT_NONE;
        GPIO_InitStruct.Mode=GPIO_MODE_INPUT_PULLDOWN;
        GPIO_InitStruct.Pins=GPIO_PIN_15;
        GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
        GPIO_Init(CW_GPIOA, &GPIO_InitStruct);

        Trig_Send(0);

        TIM_Init();
}
void BTIM1_Start(void)//打開定時器
{
        BTIM_SetCounter(CW_BTIM1,0);
        Get_Time=0;
        BTIM_Cmd(CW_BTIM1,ENABLE);
}
void BTIM1_Stop(void)//關(guān)閉定時器
{
        BTIM_Cmd(CW_BTIM1,DISABLE);
}
uint32_t Get_Tim_Timer(void)//得到信號反射時間
{
        uint32_t time;
        time=Get_Time*1000;
        time+=BTIM_GetCounter(CW_BTIM1);
        BTIM_SetCounter(CW_BTIM1,0);

        return time;
}
float Get_Disance(void)//距離計算
{
        uint8_t i;
        uint16_t time=0;
        float Distance=0;
        float Temp=0;
        float num=0;
        for(i=0;i

在main.c中編寫如下代碼

int main(void)
{
        OLED_Init();//初始化
        HC_SR04_Init();
        OLED_ShowString(1,1,"hello");//OLED顯示字符串
        while(1)
        {
                OLED_ShowString(2,1,"Dis:");
                OLED_ShowNum(2,5,Get_Disance(),3);//距離顯示
                OLED_ShowString(2,9,"cm");;
        }
}

工作現(xiàn)象

將代碼燒入主控制板之后,可以觀察到以下現(xiàn)象

OLED顯示屏第一行第一列顯示字符串hello

第二行顯示距離單位cm

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 超聲波
    +關(guān)注

    關(guān)注

    63

    文章

    3301

    瀏覽量

    145244
  • 智能小車
    +關(guān)注

    關(guān)注

    87

    文章

    560

    瀏覽量

    83430
  • CW32
    +關(guān)注

    關(guān)注

    1

    文章

    299

    瀏覽量

    1843
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    CW32L012/F030X1智能小車——板載WS2812驅(qū)動示例

    WS2812是一種廣泛使用的地址可控制的RGB LED模塊,其內(nèi)置驅(qū)動電路和控制芯片,允許用戶通過單線信號控制多個LED的顏色和亮度。
    的頭像 發(fā)表于 01-05 16:35 ?2838次閱讀
    <b class='flag-5'>CW32L012</b>/<b class='flag-5'>F030</b><b class='flag-5'>靈</b><b class='flag-5'>眸</b><b class='flag-5'>X1</b><b class='flag-5'>智能</b><b class='flag-5'>小車</b>——板載WS2812驅(qū)動示例

    CW32L012小型機器人控制評估板活動 四足機器人+智能小車 開箱評測

    CW32L012活動相關(guān)資料鏈接:https://dwi41yhz703.feishu.cn/wiki/B1Ihw31ebiX0vkkhQr2cINnkn1g 小型機器人+智能小車
    發(fā)表于 11-24 23:44

    超聲波模塊參考

    說明: DYP-ME007超聲波模塊AVRmega16程序 DYP-ME007 超聲波模塊DYP-ME007和89c51的數(shù)據(jù)資料 超聲波模塊參考
    發(fā)表于 08-12 10:27

    超聲波模塊測距問題

    ·新上手一塊HC-SR04超聲波模塊寫了一個數(shù)碼管測距顯示,問題來了緩慢移動模塊可以近距離測試顯示,可是超過一米時,時時不靈,顯示亂碼,為嘛呢??,求解
    發(fā)表于 03-15 11:41

    HC-SR04超聲波模塊的工作原理是什么

    ,模塊高精度,盲區(qū)小等特點。此模塊可用于機器人與小車避障,物體測距等,是現(xiàn)在高校比賽中常用的一款避障傳感器。二、超聲波測距原理超聲波測距原理
    發(fā)表于 07-19 09:36

    超聲波模塊的原理

    最近在造小車 需要用到超聲波模塊 現(xiàn)將調(diào)試時用到的代碼分享出來。所用超聲波模塊為HC-SR04單片機開發(fā)板是吳鑒鷹的先理解超聲波模塊的原理,它有四個接口 Vcc Trig Echo G
    發(fā)表于 07-21 08:54

    怎樣去設(shè)計一種基于超聲波模塊智能避障小車

    超聲波模塊的工作原理是什么?怎樣去設(shè)計一種基于超聲波模塊智能避障小車呢?
    發(fā)表于 11-17 06:56

    利用超聲波模塊設(shè)計智能避障的WiFi小車

    51版本(第一節(jié))這個智能小車可以使用51或32或Arduino wemos來完成,由于時間原因,這里不一定會把32版本的放出來。先看一下代碼展示圖這里利用的模塊有HC-SR04超聲波模塊
    發(fā)表于 12-13 06:54

    怎么使用STM32F1驅(qū)動超聲波模塊

    16個小時,錯誤原因竟然是哭笑不得的供電不足)。第二,分享給其他在學(xué)或還不知道怎么使用超聲波模塊的同仁,避免犯和我一樣的錯誤。編程IDE工具:KEIL5實驗所需材料:1.STM32F103系列單片機任意一款2. HC_SR04超聲波模塊
    發(fā)表于 01-17 07:32

    超聲波模塊的工作原理與時序圖學(xué)習(xí)

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔文章目錄前言一、超聲波模塊的工作原理二、超聲波的時序圖三、利用STM32F407進行驅(qū)動編寫1.定時器
    發(fā)表于 02-16 06:02

    怎樣利用HY-SRF05超聲波模塊實現(xiàn)超聲波的測距避障呢

    目錄產(chǎn)品功能硬件結(jié)構(gòu)STM32F10X主控板引腳接線HY-SRF05 超聲波模塊引腳接線軟件代碼測試結(jié)果產(chǎn)品功能硬件結(jié)構(gòu)STM32F10X主控板引腳接線HY-SRF05 超聲波模塊引腳
    發(fā)表于 02-24 06:07

    超聲波模塊

    超聲波模塊的資料,在使用的或者學(xué)習(xí)的燒友可以來看看。
    發(fā)表于 06-17 16:33 ?32次下載

    利用HY-SRF05 超聲波模塊實現(xiàn)超聲波的測距避障

    目錄產(chǎn)品功能硬件結(jié)構(gòu)STM32F10X主控板引腳接線HY-SRF05 超聲波模塊引腳接線軟件代碼測試結(jié)果產(chǎn)品功能硬件結(jié)構(gòu)STM32F10X主控板引腳接線HY-SRF05 超聲波模塊引腳
    發(fā)表于 12-31 19:53 ?15次下載
    利用HY-SRF05 <b class='flag-5'>超聲波模塊</b>實現(xiàn)<b class='flag-5'>超聲波</b>的測距避障

    如何使用超聲波模塊

    本例為FPGA之旅設(shè)計99例中的第十五例,本例將介紹如何使用超聲波模塊,進行測距。這個模塊智能小車中使用的比較多,使用起來比較方便,僅需四個引腳即可驅(qū)動。
    的頭像 發(fā)表于 09-26 09:59 ?3699次閱讀

    基于CW32的超聲波模塊的應(yīng)用

    C-SR04超聲波模塊是一種常用的測距模塊,其通過發(fā)射超聲波并接收其反射信號來實現(xiàn)測距功能。
    的頭像 發(fā)表于 09-06 09:13 ?1838次閱讀