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

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

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

水壓計(jì)ILPS28QSW開發(fā)(3)----Qvar觸摸電容配置

嵌入式單片機(jī)MCU開發(fā) ? 來源:嵌入式單片機(jī)MCU開發(fā) ? 作者:嵌入式單片機(jī)MCU開 ? 2024-07-21 17:10 ? 次閱讀

概述

Qvar,全稱為電荷變化檢測(cè)(Qvar stands for “Quasi-static VARiation”),是一種用于檢測(cè)電荷變化的技術(shù)。這種技術(shù)通常用于傳感器和其他電子設(shè)備中,特別是在慣性測(cè)量單元(IMU)和微機(jī)電系統(tǒng)(MEMS)技術(shù)中。Qvar 技術(shù)可以用于檢測(cè)微小的電荷變化,這些變化可能是由于物理運(yùn)動(dòng)、環(huán)境變化或其他因素導(dǎo)致的。
在 ILPS28QSW 這類先進(jìn)的 MEMS 中,Qvar 技術(shù)用于增強(qiáng)用戶界面功能,如輕觸、雙擊、三擊、長按或滑動(dòng)手勢(shì)。它通過檢測(cè)和解析與這些手勢(shì)相關(guān)的微小電荷變化,來實(shí)現(xiàn)高度精準(zhǔn)和靈敏的用戶交互。
需要樣片的可以加群申請(qǐng):615061293 。

在這里插入圖片描述

視頻教學(xué)

[https://www.bilibili.com/video/BV1AH4y1c7rL/]

樣品申請(qǐng)

[https://www.wjx.top/vm/OhcKxJk.aspx#]

完整代碼下載

[https://download.csdn.net/download/qq_24312945/89544680]

Qvar功能

Qvar(電荷變化檢測(cè))功能可以通過外部電極實(shí)現(xiàn),用于用戶接口,例如:
水泄漏檢測(cè)
輕拍檢測(cè)
雙擊檢測(cè)
長按檢測(cè)
左/右滑動(dòng)檢測(cè)
這些功能為傳感器在智能設(shè)備和工業(yè)應(yīng)用中提供了更多可能性。

生成STM32CUBEMX

用STM32CUBEMX生成例程,這里使用MCU為STM32H503CB。 配置時(shí)鐘樹,配置時(shí)鐘為250M。

在這里插入圖片描述

串口配置

查看原理圖,PA9和PA10設(shè)置為開發(fā)板的串口。

在這里插入圖片描述

配置串口,速率為2000000。

在這里插入圖片描述

IIC配置

在這里插入圖片描述

配置IIC速度為1M。

在這里插入圖片描述

串口重定向

打開魔術(shù)棒,勾選MicroLIB

在這里插入圖片描述

在main.c中,添加頭文件,若不添加會(huì)出現(xiàn) identifier "FILE" is undefined報(bào)錯(cuò)。

/* USER CODE BEGIN Includes */
#include "stdio.h"
/* USER CODE END Includes */

函數(shù)聲明和串口重定向:

/* USER CODE BEGIN PFP */
int fputc(int ch, FILE *f){
    HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);
    return ch;
}
/* USER CODE END PFP */

參考驅(qū)動(dòng)程序

[https://github.com/STMicroelectronics/ilps28qsw-pid]

獲取ID

可以向WHO_AM_I (0Fh)獲取固定值,判斷是否為0xB4

在這里插入圖片描述

ilps28qsw_id_get為獲取函數(shù)。

在這里插入圖片描述

對(duì)應(yīng)的獲取ID驅(qū)動(dòng)程序,如下所示。

/* Check device ID */
  ilps28qsw_id_get(&dev_ctx, &id);
    printf("ILPS28QSW_ID=0x%x,id.whoami=0x%xn",ILPS28QSW_ID,id.whoami);    
  if (id.whoami != ILPS28QSW_ID)
    while(1);

復(fù)位操作

ilps28qsw_init_set為重置函數(shù)。

在這里插入圖片描述

對(duì)應(yīng)的驅(qū)動(dòng)程序,如下所示。

/* Restore default configuration */
  ilps28qsw_init_set(&dev_ctx, ILPS28QSW_RESET);
  do {
    ilps28qsw_status_get(&dev_ctx, &status);
  } while (status.sw_reset);

BDU設(shè)置

在很多傳感器中,數(shù)據(jù)通常被存儲(chǔ)在輸出寄存器中,這些寄存器分為兩部分:MSB和LSB。這兩部分共同表示一個(gè)完整的數(shù)據(jù)值。例如,在一個(gè)加速度計(jì)中,MSB和LSB可能共同表示一個(gè)加速度的測(cè)量值。
連續(xù)更新模式(BDU = ‘0’):在默認(rèn)模式下,輸出寄存器的值會(huì)持續(xù)不斷地被更新。這意味著在你讀取MSB和LSB的時(shí)候,寄存器中的數(shù)據(jù)可能會(huì)因?yàn)樾碌臏y(cè)量數(shù)據(jù)而更新。這可能導(dǎo)致一個(gè)問題:當(dāng)你讀取MSB時(shí),如果寄存器更新了,接下來讀取的LSB可能就是新的測(cè)量值的一部分,而不是與MSB相對(duì)應(yīng)的值。這樣,你得到的就是一個(gè)“拼湊”的數(shù)據(jù),它可能無法準(zhǔn)確代表任何實(shí)際的測(cè)量時(shí)刻。
塊數(shù)據(jù)更新(BDU)模式(BDU = ‘1’):當(dāng)激活BDU功能時(shí),輸出寄存器中的內(nèi)容不會(huì)在讀取MSB和LSB之間更新。這就意味著一旦開始讀取數(shù)據(jù)(無論是先讀MSB還是LSB),寄存器中的那一組數(shù)據(jù)就被“鎖定”,直到兩部分都被讀取完畢。這樣可以確保你讀取的MSB和LSB是同一測(cè)量時(shí)刻的數(shù)據(jù),避免了讀取到代表不同采樣時(shí)刻的數(shù)據(jù)。
簡而言之,BDU位的作用是確保在讀取數(shù)據(jù)時(shí),輸出寄存器的內(nèi)容保持穩(wěn)定,從而避免讀取到拼湊或錯(cuò)誤的數(shù)據(jù)。這對(duì)于需要高精度和穩(wěn)定性的應(yīng)用尤為重要。
可以向CTRL_REG2 (11h)的BDU寄存器寫入1進(jìn)行開啟。

在這里插入圖片描述

對(duì)應(yīng)的驅(qū)動(dòng)程序,如下所示。

/* Set bdu and if_inc recommended for driver usage */
  ilps28qsw_init_set(&dev_ctx, ILPS28QSW_DRV_RDY);

設(shè)置總線接口

/* Select bus interface */
  bus_mode.filter = ILPS28QSW_AUTO;
  ilps28qsw_bus_mode_set(&dev_ctx, &bus_mode);

設(shè)置速率

設(shè)置速率和量程可以通過CTRL_REG1 (10h)和CTRL_REG2 (11h)進(jìn)行設(shè)置。

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

/* Set Output Data Rate */
  md.odr = ILPS28QSW_200Hz;
  md.avg = ILPS28QSW_4_AVG;
  ilps28qsw_mode_set(&dev_ctx, &md);

開啟QVAR

通過配置CTRL_REG3 (12h)寄存器,可以根據(jù)需要啟用(AH)/ Qvar功能。

在這里插入圖片描述

/* Enable AH/QVAR function */
  ilps28qsw_ah_qvar_en_set(&dev_ctx, 1);

QVAR外部電路

下圖可以了解如何配置和使用ILPS28QSW傳感器的模擬樞紐和Qvar功能,包括其外部連接、寄存器配置及操作模式,從而有效地利用該傳感器的多功能特性。

在這里插入圖片描述

初始化代碼

/* USER CODE BEGIN 2 */
  ilps28qsw_all_sources_t all_sources;
  ilps28qsw_bus_mode_t bus_mode;
  ilps28qsw_stat_t status;
  stmdev_ctx_t dev_ctx;
  ilps28qsw_id_t id;
  ilps28qsw_md_t md;

  /* Initialize mems driver interface */
  dev_ctx.write_reg = platform_write;
  dev_ctx.read_reg = platform_read;
  dev_ctx.mdelay = platform_delay;
  dev_ctx.handle = &SENSOR_BUS;

  /* Init test platform */
//  platform_init(dev_ctx.handle);
  /* Wait sensor boot time */
  platform_delay(BOOT_TIME);

  /* Check device ID */
  ilps28qsw_id_get(&dev_ctx, &id);
    printf("ILPS28QSW_ID=0x%x,id.whoami=0x%xn",ILPS28QSW_ID,id.whoami);    
  if (id.whoami != ILPS28QSW_ID)
    while(1);

  /* Restore default configuration */
  ilps28qsw_init_set(&dev_ctx, ILPS28QSW_RESET);
  do {
    ilps28qsw_status_get(&dev_ctx, &status);
  } while (status.sw_reset);

  /* Set bdu and if_inc recommended for driver usage */
  ilps28qsw_init_set(&dev_ctx, ILPS28QSW_DRV_RDY);

  /* Select bus interface */
  bus_mode.filter = ILPS28QSW_AUTO;
  ilps28qsw_bus_mode_set(&dev_ctx, &bus_mode);

  /* Set Output Data Rate */
  md.odr = ILPS28QSW_200Hz;
  md.avg = ILPS28QSW_4_AVG;
  ilps28qsw_mode_set(&dev_ctx, &md);

  /* Enable AH/QVAR function */
  ilps28qsw_ah_qvar_en_set(&dev_ctx, 1);
  /* USER CODE END 2 */

獲取Qvar數(shù)據(jù)

對(duì)于Qvar數(shù)據(jù)是否準(zhǔn)備好,可以查看STATUS (27h)的P_DA位,判斷是否有新數(shù)據(jù)到達(dá)。

在這里插入圖片描述

對(duì)于壓強(qiáng)和QVAR數(shù)據(jù),主要在PRESS_OUT_XL (28h)-PRESS_OUT_H (2Ah)。

在這里插入圖片描述

/* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    static ilps28qsw_ah_qvar_data_t data;
    /* Read output only if new values are available */
    ilps28qsw_all_sources_get(&dev_ctx, &all_sources);
    if ( all_sources.drdy_pres ) {
      ilps28qsw_ah_qvar_data_get(&dev_ctx, &data);

      printf("QVAR [mV]:%6.2f [LSB]:%drn", data.mv, data.lsb);

    }        

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 *

測(cè)試結(jié)果

未觸摸。

在這里插入圖片描述

觸摸上按鍵。

在這里插入圖片描述

觸摸下按鍵。

在這里插入圖片描述

審核編輯 黃宇

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

    關(guān)注

    100

    文章

    6045

    瀏覽量

    150327
  • mems
    +關(guān)注

    關(guān)注

    129

    文章

    3931

    瀏覽量

    190622
  • 氣壓計(jì)
    +關(guān)注

    關(guān)注

    1

    文章

    55

    瀏覽量

    18257
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    瑞薩e2studio(24)----電容觸摸配置(1)

    瑞薩e2studio(24)----電容觸摸配置(1)
    的頭像 發(fā)表于 08-21 15:47 ?1094次閱讀
    瑞薩e2studio(24)----<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b><b class='flag-5'>配置</b>(1)

    瑞薩e2studio(25)----電容觸摸配置(2)

    瑞薩e2studio(25)----電容觸摸配置(2)
    的頭像 發(fā)表于 08-21 15:50 ?925次閱讀
    瑞薩e2studio(25)----<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b><b class='flag-5'>配置</b>(2)

    陀螺儀LSM6DSV16X與AI集成(4)----Qvar觸摸電容配置

    Qvar,全稱為電荷變化檢測(cè)(Qvar stands for "Quasi-static VARiation"),是一種用于檢測(cè)電荷變化的技術(shù)。這種技術(shù)通常用于傳感器和其他
    的頭像 發(fā)表于 12-18 10:55 ?1136次閱讀
    陀螺儀LSM6DSV16X與AI集成(4)----<b class='flag-5'>Qvar</b><b class='flag-5'>觸摸</b><b class='flag-5'>電容</b><b class='flag-5'>配置</b>

    水壓計(jì)ILPS28QSW開發(fā)(1)----輪詢獲取水壓計(jì)數(shù)據(jù)

    本文將介紹如何使用 ILPS28QSW 傳感器來讀取數(shù)據(jù)。主要步驟包括初始化傳感器接口、驗(yàn)證設(shè)備ID、配置傳感器的數(shù)據(jù)輸出率和濾波器,以及通過輪詢方式持續(xù)讀取氣壓數(shù)據(jù)和溫度數(shù)據(jù)。讀取到的數(shù)據(jù)會(huì)被轉(zhuǎn)換為適當(dāng)?shù)膯挝徊⑼ㄟ^串行通信輸出。
    的頭像 發(fā)表于 07-21 09:51 ?1103次閱讀
    <b class='flag-5'>水壓計(jì)</b><b class='flag-5'>ILPS28QSW</b><b class='flag-5'>開發(fā)</b>(1)----輪詢獲取<b class='flag-5'>水壓計(jì)</b>數(shù)據(jù)

    在CTRL_REG3數(shù)據(jù)表中QVAR_AUTO_EN不起作用如何解決呢

    Qvar 數(shù)據(jù)的 ODR 都減半(在單次模式下,輸出一次用壓力填充,一次用 Qvar 填充)。 我在 CTRL_REG3 數(shù)據(jù)表描述中沒有看到 QVAR_AUTO_EN,當(dāng)我嘗試這
    發(fā)表于 12-23 07:59

    CapTIvate電容觸摸解決方案(3

    TI MSP430 CapTIvate Lite: 成本優(yōu)化的電容觸摸微控制器 (3)
    的頭像 發(fā)表于 08-06 00:19 ?3793次閱讀
    CapTIvate<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>解決方案(<b class='flag-5'>3</b>)

    配置多個(gè)電容觸摸傳感按鈕

    本應(yīng)用筆記將說明在使用超過 4 個(gè)電容觸摸傳感按鈕時(shí),如何掃描和檢測(cè)按鈕是否按下。本應(yīng)用筆記針對(duì)PIC16F616系列、PIC16F690系列以及PIC16F887系列單片機(jī)。建議在閱讀本應(yīng)用筆記之前先了解電容
    發(fā)表于 04-20 10:17 ?5次下載

    電容觸摸按鍵實(shí)驗(yàn)”實(shí)例解析

    目錄電容觸摸按鍵實(shí)驗(yàn)電容觸摸按鍵的基本原理(原理圖層面)新電容的產(chǎn)生與作用充放電性能的變化脈沖如何被捕獲原理圖層面的連接硬件
    發(fā)表于 11-30 11:36 ?15次下載
    “<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>按鍵實(shí)驗(yàn)”實(shí)例解析

    QE和FSP開發(fā)電容觸摸應(yīng)用指南

    QE和FSP開發(fā)電容觸摸應(yīng)用指南
    發(fā)表于 11-07 19:50 ?2次下載
    QE和FSP<b class='flag-5'>開發(fā)電容</b><b class='flag-5'>觸摸</b>應(yīng)用指南

    ST首款MEMS防水/防液絕對(duì)壓力傳感器,賦能工業(yè)物聯(lián)網(wǎng)

    意法半導(dǎo)體新推出的ILPS28QSW傳感器采用密封的圓柱形表面貼裝封裝。該封裝采用防液體滲透性很高的陶瓷基板和堅(jiān)固的車用灌封膠保護(hù)內(nèi)部電路。
    發(fā)表于 06-15 11:45 ?573次閱讀
    ST首款MEMS防水/防液絕對(duì)壓力傳感器,賦能工業(yè)物聯(lián)網(wǎng)

    Qvar感應(yīng)通道的配置和操作指南

    AN5755 ?Qvar 是意法半導(dǎo)體推出的一款靜電傳感器,適用于人體存在檢測(cè)和運(yùn)動(dòng)檢測(cè)、觸摸檢測(cè)和用戶界面 (UI) 應(yīng)用。本應(yīng)用筆記涵蓋 Qvar 感應(yīng)通道的配置和操作指南。在塑料
    發(fā)表于 09-12 09:35 ?0次下載

    水壓計(jì)ILPS28QSW開發(fā)(2)----水壓檢測(cè)

    本文將介紹如何使用 ILPS28QSW 傳感器來讀取的壓強(qiáng)數(shù)據(jù),來估算水下深度,可以利用液體靜壓的原理。對(duì)于水平地面的固體對(duì)地面產(chǎn)生的壓強(qiáng),由于壓力大小等于重力,計(jì)算固體壓力時(shí)一般都會(huì)先計(jì)算壓力后計(jì)
    的頭像 發(fā)表于 07-21 17:05 ?591次閱讀
    <b class='flag-5'>水壓計(jì)</b><b class='flag-5'>ILPS28QSW</b><b class='flag-5'>開發(fā)</b>(2)----<b class='flag-5'>水壓</b>檢測(cè)

    孔隙水壓力計(jì)現(xiàn)場(chǎng)埋設(shè)_滲壓計(jì)埋設(shè)安裝方法有幾種?

    ?工程監(jiān)測(cè)領(lǐng)域,孔隙水壓力計(jì)的現(xiàn)場(chǎng)埋設(shè)方法一直是眾多監(jiān)測(cè)人員關(guān)注的重點(diǎn)。常常有監(jiān)測(cè)朋友在網(wǎng)上詢問相關(guān)問題,此前南京峟思雖已闡述過滲壓計(jì)孔隙水壓力計(jì)埋設(shè)安裝的注意要點(diǎn),使得大家能夠較為熟練地運(yùn)用滲壓
    的頭像 發(fā)表于 12-18 11:01 ?88次閱讀
    孔隙<b class='flag-5'>水壓力計(jì)</b>現(xiàn)場(chǎng)埋設(shè)_滲壓<b class='flag-5'>計(jì)</b>埋設(shè)安裝方法有幾種?

    振弦式孔隙水壓力計(jì)原理與公式你了解嗎

    ?振弦式孔隙水壓力計(jì)作為工程監(jiān)測(cè)領(lǐng)域的重要儀器,主要由金屬外殼、透水石、傳感器以及信號(hào)傳輸電纜等部件組成,它亦被稱為孔隙水壓計(jì)或滲壓計(jì)。在當(dāng)今自動(dòng)化監(jiān)測(cè)技術(shù)不斷成熟并大規(guī)模推廣應(yīng)用的時(shí)代背景下,除了
    的頭像 發(fā)表于 12-18 11:16 ?94次閱讀
    振弦式孔隙<b class='flag-5'>水壓力計(jì)</b>原理與公式你了解嗎

    峟思振弦式滲壓計(jì)三大核心問題解析

    ?孔隙水壓力測(cè)量裝置,亦被業(yè)界稱為滲壓計(jì)或孔隙水壓計(jì),在其埋設(shè)、安裝及應(yīng)用過程中,諸多疑問常常困擾著使用者。例如,孔隙水壓力呈現(xiàn)負(fù)值意味著什么?如何正確安裝孔隙
    的頭像 發(fā)表于 12-19 13:06 ?108次閱讀
    峟思振弦式滲壓<b class='flag-5'>計(jì)</b>三大核心問題解析