色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

CW32模塊使用 MS5611氣壓傳感器

CW32生態(tài)社區(qū) ? 來(lái)源:CW32生態(tài)社區(qū) ? 作者:CW32生態(tài)社區(qū) ? 2024-12-05 12:01 ? 次閱讀

一、模塊來(lái)源

模塊實(shí)物展示:

wKgZPGdRJamAdE2CAAAlhGtYYrg435.jpg


資料下載鏈接:
https://pan.baidu.com/s/1QOrpiggCE6mBpqabJXUufg
提取碼:c2pp

二 、規(guī)格參數(shù)

工作電壓:1.8~3.6V

工作電流:0.25~23uA

溫度精度:0.8℃

溫度范圍:-40~85℃

氣壓范圍:10~1200 mbar

氣壓精度:1.5 mbar

輸出方式: IIC

管腳數(shù)量:3 Pin

以上信息見(jiàn)廠(chǎng)家資料文件

三、移植過(guò)程

我們的目標(biāo)是將例程移植至CW32F030C8T6開(kāi)發(fā)板上【能夠測(cè)量環(huán)境氣壓】。首先要獲取資料,查看數(shù)據(jù)手冊(cè)應(yīng)如何實(shí)現(xiàn)讀取數(shù)據(jù),再移植至我們的工程。

3.1查看資料

當(dāng)PS引腳接高電平時(shí),傳感器屬于IIC模式;當(dāng)PS引腳接低電平時(shí),傳感器屬于SPI模式;在原理圖上,PS引腳通過(guò)上拉電阻接了高電平,故默認(rèn)為IIC模式。

wKgZO2dRJamAKxJeAABU9qUS9N4484.jpg

器件地址 = 0XEE

CSB的反補(bǔ)碼 即CSB引腳接高電平時(shí), 地址為 1110 110+(讀寫(xiě)位)

CSB的反補(bǔ)碼 即CSB引腳接低電平時(shí), 地址為 1110 111+(讀寫(xiě)位)

wKgZPGdRJamARG7SAAASjBwQs4c065.jpg

讀取氣壓與溫度的流程:開(kāi)始-> 讀取出廠(chǎng)校準(zhǔn)值C1至C6 -> 讀取氣壓D1和溫度D2的原始數(shù)據(jù) -> 將D2和C1C6帶入公式求出dT和TEMP,其中TEMP為溫度數(shù)據(jù)-> 將dT和C1至C6帶入公式求出OFF、SENS和P,其中P為氣壓數(shù)據(jù)。

wKgZO2dRJaqAJw5NAADoWr_EpeE904.jpg

3.2引腳選擇

wKgZPGdRJaqABXfTAAFUnCnYQAE450.jpg

模塊接線(xiàn)圖

3.3移植至工程

移植步驟中的導(dǎo)入.c和.h文件與【CW32模塊使用】DHT11溫濕度傳感器相同,只是將.c和.h文件更改為bsp_ms5611.c與bsp_ms5611.h。這里不再過(guò)多講述,移植完成后面修改相關(guān)代碼。

在文件bsp_ms5611.c中,編寫(xiě)如下代碼。

/*
 * Change Logs:
 * Date           Author       Notes
 * 2024-06-20     LCKFB-LP    first version
 */

#include "bsp_ms5611.h"
#include "stdio.h"
#include "board.h"

//出廠(chǎng)校準(zhǔn)值
//Cal_C1_6[0]                                 = 廠(chǎng)家信息
//Cal_C1_6[1] ~ Cal_C1_6[6] = 校準(zhǔn)值
//Cal_C1_6[7]                                 = 校準(zhǔn)值的CRC校驗(yàn)
uint16_t Cal_C1_6[8];


/******************************************************************
 * 函 數(shù) 名 稱(chēng):MS5611_GPIO_Init
 * 函 數(shù) 說(shuō) 明:MS5611的引腳初始化
 * 函 數(shù) 形 參:無(wú)
 * 函 數(shù) 返 回:無(wú)
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
void MS5611_GPIO_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStruct; // GPIO初始化結(jié)構(gòu)體

    RCC_MS5611_ENBALE();        // 使能GPIO時(shí)鐘

    GPIO_InitStruct.Pins = GPIO_SDA|GPIO_SCL;   // GPIO引腳
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; // 開(kāi)漏輸出
    GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;    // 輸出速度高
    GPIO_Init(PORT_MS5611, &GPIO_InitStruct);   // 初始化
}


/******************************************************************
 * 函 數(shù) 名 稱(chēng):IIC_Start
 * 函 數(shù) 說(shuō) 明:IIC起始時(shí)序
 * 函 數(shù) 形 參:無(wú)
 * 函 數(shù) 返 回:無(wú)
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
void IIC_Start(void)
{
        SDA_OUT();

        SDA(1);
        delay_us(5);
        SCL(1);
        delay_us(5);

        SDA(0);
        delay_us(5);
        SCL(0);
        delay_us(5);

}
/******************************************************************
 * 函 數(shù) 名 稱(chēng):IIC_Stop
 * 函 數(shù) 說(shuō) 明:IIC停止信號(hào)
 * 函 數(shù) 形 參:無(wú)
 * 函 數(shù) 返 回:無(wú)
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
void IIC_Stop(void)
{
        SDA_OUT();
        SCL(0);
        SDA(0);

        SCL(1);
        delay_us(5);
        SDA(1);
        delay_us(5);

}

/******************************************************************
 * 函 數(shù) 名 稱(chēng):IIC_Send_Ack
 * 函 數(shù) 說(shuō) 明:主機(jī)發(fā)送應(yīng)答或者非應(yīng)答信號(hào)
 * 函 數(shù) 形 參:0發(fā)送應(yīng)答  1發(fā)送非應(yīng)答
 * 函 數(shù) 返 回:無(wú)
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
void IIC_Send_Ack(unsigned char ack)
{
        SDA_OUT();
        SCL(0);
        SDA(0);
        delay_us(5);
        if(!ack) SDA(0);
        else         SDA(1);
        SCL(1);
        delay_us(5);
        SCL(0);
        SDA(1);
}


/******************************************************************
 * 函 數(shù) 名 稱(chēng):I2C_WaitAck
 * 函 數(shù) 說(shuō) 明:等待從機(jī)應(yīng)答
 * 函 數(shù) 形 參:無(wú)
 * 函 數(shù) 返 回:0有應(yīng)答  1超時(shí)無(wú)應(yīng)答
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
unsigned char I2C_WaitAck(void)
{

        char ack = 0;
        unsigned char ack_flag = 10;
        SCL(0);
        SDA(1);
        SDA_IN();
        delay_us(5);
        SCL(1);
        delay_us(5);

        while( (SDA_GET()==1) && ( ack_flag ) )
        {
                ack_flag--;
                delay_us(5);
        }

        if( ack_flag <= 0 )
        {
                IIC_Stop();
                return 1;
        }
        else
        {
                SCL(0);
                SDA_OUT();
        }
        return ack;
}

/******************************************************************
 * 函 數(shù) 名 稱(chēng):Send_Byte
 * 函 數(shù) 說(shuō) 明:寫(xiě)入一個(gè)字節(jié)
 * 函 數(shù) 形 參:dat要寫(xiě)人的數(shù)據(jù)
 * 函 數(shù) 返 回:無(wú)
 * 作       者:LC
 * 備       注:無(wú)
******************************************************************/
void Send_Byte(uint8_t dat)
{
        int i = 0;
        SDA_OUT();
        SCL(0);//拉低時(shí)鐘開(kāi)始數(shù)據(jù)傳輸

        for( i = 0; i < 8; i++ )
        {
                SDA( (dat & 0x80) >> 7 );
                delay_us(1);
                SCL(1);
                delay_us(5);
                SCL(0);
                delay_us(5);
                dat

在文件bsp_sht10.h中,編寫(xiě)如下代碼。

/*
 * Change Logs:
 * Date           Author       Notes
 * 2024-06-20     LCKFB-LP    first version
 */

#ifndef _BSP_MS5611_H_
#define _BSP_MS5611_H_

#include "board.h"


//端口移植
#define RCC_MS5611_ENBALE()        __RCC_GPIOB_CLK_ENABLE()
#define PORT_MS5611                CW_GPIOB


#define GPIO_SDA                   GPIO_PIN_9
#define GPIO_SCL                   GPIO_PIN_8

//設(shè)置SDA輸出模式
#define SDA_OUT()   {        
                        GPIO_InitTypeDef GPIO_InitStruct;                
                        GPIO_InitStruct.Pins = GPIO_SDA;                 
                        GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;      
                        GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;         
                        GPIO_Init(PORT_MS5611, &GPIO_InitStruct);       
                     }
//設(shè)置SDA輸入模式
#define SDA_IN()    {        
                        GPIO_InitTypeDef GPIO_InitStruct;                
                        GPIO_InitStruct.Pins = GPIO_SDA;                 
                        GPIO_InitStruct.Mode = GPIO_MODE_INPUT;         
                        GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;         
                        GPIO_Init(PORT_MS5611, &GPIO_InitStruct);       
                    }
//獲取SDA引腳的電平變化
#define SDA_GET()       GPIO_ReadPin(PORT_MS5611, GPIO_SDA)
//SDA與SCL輸出
#define SDA(x)          GPIO_WritePin(PORT_MS5611, GPIO_SDA, (x?GPIO_Pin_SET:GPIO_Pin_RESET) )
#define SCL(x)          GPIO_WritePin(PORT_MS5611, GPIO_SCL, (x?GPIO_Pin_SET:GPIO_Pin_RESET) )


void MS5611_GPIO_Init(void);
char MS5611_Reset(void);
void MS5611_Read_PROM(void);
float Get_TEMP(void);
float Get_pressure(void);

#endif

四、移植驗(yàn)證

在自己工程中的main主函數(shù)中,編寫(xiě)如下。

/*
 * Change Logs:
 * Date           Author       Notes
 * 2024-06-20     LCKFB-LP    first version
 */
#include "board.h"
#include "stdio.h"
#include "bsp_uart.h"
#include "bsp_ms5611.h"

int32_t main(void)
{
    board_init();        // 開(kāi)發(fā)板初始化

    uart1_init(115200);        // 串口1波特率115200

    MS5611_GPIO_Init();

    MS5611_Reset();//器件復(fù)位

    delay_ms(300);//等待初始化完成;

    MS5611_Read_PROM();//讀取出廠(chǎng)校準(zhǔn)值
    printf("startrn");
    while(1)
    {
        //輸出溫度
        printf("溫度 = %.0f℃rn",Get_TEMP() );
        //輸出氣壓
        printf("氣壓 = %.2fHParn",Get_pressure() );

        printf("n");
        delay_ms(1000);

    }
}

移植現(xiàn)象:每隔一秒左右測(cè)量一次溫度和氣壓。

wKgZO2dRJaqAOhuNAADVTu4IipI077.jpg

模塊移植成功案例代碼:

鏈接:https://pan.baidu.com/s/1unyWALyDcHWy02K_Y77blQ?pwd=LCKF

提取碼:LCKF

審核編輯 黃宇

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

    關(guān)注

    2550

    文章

    51035

    瀏覽量

    753063
  • 氣壓傳感器
    +關(guān)注

    關(guān)注

    4

    文章

    136

    瀏覽量

    21074
  • CW32
    +關(guān)注

    關(guān)注

    1

    文章

    203

    瀏覽量

    626
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    氣壓傳感器的分類(lèi)與應(yīng)用

    ? 傳感器技術(shù)已成為現(xiàn)代工業(yè)、科研及日常生活中不可或缺的重要部分。其中,氣壓傳感器作為能夠精確測(cè)量大氣壓力的設(shè)備,其應(yīng)用廣泛且日益重要。本文將深入探討
    的頭像 發(fā)表于 12-20 09:22 ?68次閱讀
    <b class='flag-5'>氣壓</b><b class='flag-5'>傳感器</b>的分類(lèi)與應(yīng)用

    CW32模塊使用 人體紅外傳感器

    人體紅外感應(yīng)模塊使用的是熱釋電紅外傳感器,它是利用溫度變化的特征來(lái)探測(cè)紅外線(xiàn)的輻射,利用雙靈敏元互補(bǔ)的方法抑制溫度變化產(chǎn)生的干擾,提高了傳感器的工作穩(wěn)定性。產(chǎn)品應(yīng)用廣泛,例如:保險(xiǎn)裝置、防盜報(bào)警
    的頭像 發(fā)表于 12-05 15:09 ?148次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用 人體紅外<b class='flag-5'>傳感器</b>

    CW32模塊使用 BMP180氣壓傳感器

    CW32F030C8T6開(kāi)發(fā)板上【能夠測(cè)量環(huán)境溫度、氣壓、高度】。首先要獲取資料,查看數(shù)據(jù)手冊(cè)應(yīng)如何實(shí)現(xiàn)讀取數(shù)據(jù),再移植至我們的工程。 3.1查看資料 BMP180共有四種
    的頭像 發(fā)表于 12-05 12:06 ?112次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用 BMP180<b class='flag-5'>氣壓</b><b class='flag-5'>傳感器</b>

    小型氣壓傳感器的應(yīng)用 工業(yè)氣壓傳感器的選購(gòu)技巧

    小型氣壓傳感器的應(yīng)用 氣壓傳感器是一種能夠?qū)⒋?b class='flag-5'>氣壓力轉(zhuǎn)換為電信號(hào)的裝置,它們?cè)诂F(xiàn)代工業(yè)和日常生活中扮演著越來(lái)越重要的角色。小型
    的頭像 發(fā)表于 11-28 13:52 ?149次閱讀

    氣壓傳感器選型指南 精密氣壓傳感器的優(yōu)勢(shì)

    氣壓傳感器選型指南 1. 確定應(yīng)用場(chǎng)景 在選型之前,首先要明確氣壓傳感器的應(yīng)用場(chǎng)景。不同的應(yīng)用場(chǎng)景對(duì)傳感器的精度、響應(yīng)速度、穩(wěn)定性、環(huán)境適應(yīng)
    的頭像 發(fā)表于 11-28 13:46 ?242次閱讀

    氣壓傳感器與溫度傳感器的區(qū)別

    1. 定義與工作原理 氣壓傳感器氣壓傳感器是一種能夠檢測(cè)和測(cè)量大氣壓力的設(shè)備。大氣壓力是指
    的頭像 發(fā)表于 11-28 13:43 ?219次閱讀

    氣壓傳感器應(yīng)用領(lǐng)域分析 如何選擇氣壓傳感器

    氣壓傳感器作為現(xiàn)代科技中不可或缺的一部分,其精確測(cè)量大氣壓力的能力對(duì)于許多行業(yè)至關(guān)重要。 一、氣壓傳感器的應(yīng)用領(lǐng)域 氣象監(jiān)測(cè) 氣象站使用
    的頭像 發(fā)表于 11-28 13:40 ?275次閱讀

    CW32模塊使用】雨滴傳感器

    雨滴傳感器主要是用來(lái)檢測(cè)是否下雨及雨量的大小。主要用于汽車(chē)智能燈光(AFS)系統(tǒng)、汽車(chē)自動(dòng)雨刷系統(tǒng)、智能車(chē)窗系統(tǒng)。 該雨滴傳感器基本上是一塊板,上面以線(xiàn)形形式涂覆鎳。雨滴傳感器常見(jiàn)的工作原理是通過(guò)
    的頭像 發(fā)表于 11-28 11:23 ?2091次閱讀
    【<b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用】雨滴<b class='flag-5'>傳感器</b>

    基于CW32模塊的雨滴傳感器設(shè)計(jì)

    雨滴傳感器主要是用來(lái)檢測(cè)是否下雨及雨量的大小。主要用于汽車(chē)智能燈光(AFS)系統(tǒng)、汽車(chē)自動(dòng)雨刷系統(tǒng)、智能車(chē)窗系統(tǒng)。
    的頭像 發(fā)表于 11-26 17:22 ?233次閱讀
    基于<b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>的雨滴<b class='flag-5'>傳感器</b>設(shè)計(jì)

    CW32模塊使用】紅外測(cè)距傳感器

    GP2Y0A02YKOF是夏普的一款距離測(cè)量傳感器模塊。它由PSD(position sensitive detector)和IRED(infrared emitting diode)以及信號(hào)處理
    的頭像 發(fā)表于 09-23 09:53 ?343次閱讀
    【<b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用】紅外測(cè)距<b class='flag-5'>傳感器</b>

    CW32模塊使用 紅外循跡傳感器

    ,調(diào)節(jié)方向與固定方便易用,使用寬電壓LM393比較,信號(hào)干凈,波形好,驅(qū)動(dòng)能力強(qiáng),超過(guò)15mA。可以應(yīng)用于機(jī)器人避障、機(jī)器人進(jìn)行白線(xiàn)或者黑線(xiàn)的跟蹤,可以檢測(cè)白底中的黑線(xiàn),也可以檢測(cè)黑底中的白線(xiàn),是尋線(xiàn)機(jī)器人的必備傳感器。 01模塊
    的頭像 發(fā)表于 09-18 14:31 ?371次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用 紅外循跡<b class='flag-5'>傳感器</b>

    【項(xiàng)目展示】基于CW32的遙控循跡小車(chē)

    CW32循跡小車(chē).zip_免費(fèi)高速下載|百度網(wǎng)盤(pán)-分享無(wú)限制? 一、概述 CW32循跡、遙控小車(chē)具有循跡和遙控兩種功能,小車(chē)的硬件模塊CW32F030C8T6小藍(lán)板、智能小車(chē)控制底板
    的頭像 發(fā)表于 05-31 17:33 ?1292次閱讀
    【項(xiàng)目展示】基于<b class='flag-5'>CW32</b>的遙控循跡小車(chē)

    CW32量產(chǎn)燒錄工具

    本節(jié)主要介紹CW32微控制的燒錄CW-Writer,以及與之配合的軟件CW-Programmer的使用方法。燒錄
    的頭像 發(fā)表于 04-25 15:22 ?1391次閱讀
    <b class='flag-5'>CW32</b>量產(chǎn)燒錄工具

    CW32快速開(kāi)發(fā)入門(mén)

    CW32快速開(kāi)發(fā)入門(mén)
    的頭像 發(fā)表于 04-24 18:56 ?1947次閱讀
    <b class='flag-5'>CW32</b>快速開(kāi)發(fā)入門(mén)

    基于CW32的門(mén)禁綜合系統(tǒng)

    基于CW32單片機(jī)的門(mén)禁綜合系統(tǒng)是一款功能強(qiáng)大的智能門(mén)禁解決方案,它提供了三種開(kāi)鎖方式:密碼開(kāi)鎖、指紋開(kāi)鎖和刷卡開(kāi)鎖,為用戶(hù)提供方便、安全的門(mén)禁控制。該系統(tǒng)的核心控制采用了CW32單片機(jī),具備
    的頭像 發(fā)表于 12-28 11:43 ?1690次閱讀
    基于<b class='flag-5'>CW32</b>的門(mén)禁綜合系統(tǒng)
    主站蜘蛛池模板: 国产亚洲美女精品久久久2020| 亚洲成人三级| np高h肉文| 欧美内射AAAAAAXXXXX| 99re6热这里在线精品视频| 麻豆精品一区二正一三区| 131美女爱做视频午夜剧场 | 亚洲大片免费看| 国产亚洲精品久久久久久线投注 | 中国女人精69xxxxxx视频| 久久精品熟女亚洲AV国产| 在线播放日韩欧美亚洲日本| 久亚洲AV无码专区A片| 51久久成人国产精品麻豆| 内射后入在线观看一区| 超级碰碰青草久热国产| 色欲AV色欲AV久久麻豆| 国产精品亚洲精品日韩电影| 亚洲不卡高清免v无码屋| 黄A无码片内射无码视频| 在线a视频| 男人网站在线观看| 苍井空a 集在线观看网站| 色呦呦人人视频| 国产午夜精品理论片影院| 亚洲天堂av2017| 麻豆精品无码久久久久久久久| https黄视| 失禁h啪肉尿出来高h| 国产综合91| 伊人热| 暖暖在线观看播放视频| 大胸美女洗澡扒奶衣挤奶| 乡村教师电影版| 久草青青在线| 99久久麻豆AV色婷婷综合| 肉耽高h一受n攻| 国内精自品线一区91| 6080yy 久久 亚洲 日本| 日本二区三区欧美亚洲国| 国产精品亚洲专一区二区三区 |