99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

STM32學(xué)習(xí)筆記之電容觸摸1

jf_78858299 ? 來(lái)源:滑小稽筆記 ? 作者:電子技術(shù)園地 ? 2023-05-26 14:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

電容觸摸簡(jiǎn)介

8.1.1 電容觸摸概述

隨著科技的發(fā)展,傳統(tǒng)的機(jī)械按鍵正在逐步從設(shè)備上面消失,這個(gè)原因主要有機(jī)械按鍵由于是采用機(jī)械接觸的方式,壽命比較短,從用戶體驗(yàn)上看,機(jī)械按鍵也顯得操作復(fù)雜,對(duì)比現(xiàn)在的電容按鍵,電容按鍵具有壽命長(zhǎng),因?yàn)椴淮嬖跈C(jī)械接觸,占用空間少,以前的機(jī)械按鍵在設(shè)計(jì)外殼的時(shí)候需要考慮尺寸,現(xiàn)在換成電容按鍵后這個(gè)問(wèn)題不再需要考慮。

8.1.2 檢測(cè)原理

常規(guī)的檢測(cè)方式一般是通過(guò)計(jì)算電容放電時(shí)間來(lái)判斷是否有手指按下,這是因?yàn)槭种笗?huì)與線路板的銅箔接觸面上產(chǎn)生電容效應(yīng),當(dāng)手指沒(méi)有放在銅箔上的時(shí)候,銅箔與PCB之間存在雜散電容,這兩個(gè)狀態(tài)的電容值差別很大,檢測(cè)原理如下圖所示。

圖片

在檢測(cè)之前首先用開(kāi)關(guān)將電容Cs里面的電荷放盡,然后此時(shí)CPU開(kāi)始計(jì)算Cs的充電時(shí)間,這一部分是采用捕捉信號(hào)來(lái)測(cè)量,盡管單片機(jī)屬于數(shù)字電路,但是數(shù)字電路的邏輯電平也是有電壓限制的,比如在3.3V供電環(huán)境下,當(dāng)電壓大于2.4V則被認(rèn)為是邏輯電平1,當(dāng)電壓小于0.4V則被認(rèn)為是邏輯電平0,單片機(jī)的輸入捕獲功能來(lái)判斷輸入信號(hào)的電平是否為邏輯電平1,如果檢測(cè)到邏輯電平1,則認(rèn)為電容此時(shí)充電達(dá)到了2.4V以上,將這個(gè)時(shí)間記錄下來(lái),當(dāng)手指放在銅箔上的時(shí)候,相當(dāng)于增加了Cs的容值,此時(shí)我們繼續(xù)進(jìn)行輸入捕獲采樣,將這個(gè)捕獲的時(shí)間記錄下來(lái),兩個(gè)時(shí)間求差值,這個(gè)差值高于某個(gè)閾值的時(shí)候就可以認(rèn)為此時(shí)手指按下了電容按鍵,用這種方式就可以實(shí)現(xiàn)虛擬按鍵的使用了。這種檢測(cè)原理實(shí)際是采用了在電路分析中學(xué)習(xí)到的RC電路的零狀態(tài)響應(yīng)來(lái)實(shí)現(xiàn)的。根據(jù)RC電路的零狀態(tài)響應(yīng)可以得出電容的充電公式為

圖片

其中Vc表示電容的充電電壓,VDD為RC電路的輸入電壓,R為電阻的阻值,C為充電電容的容值,通過(guò)這個(gè)公式我們可以反推得到充點(diǎn)電容的容值。也就是說(shuō)我們可以利用這個(gè)公式實(shí)現(xiàn)電容的測(cè)量。

8.1.3 預(yù)備知識(shí)

首先我們?cè)谶M(jìn)行電容觸摸檢測(cè)的時(shí)候需要用到STM32的輸入捕獲功能,從這一章開(kāi)始,關(guān)于寄存器文件的添加,驅(qū)動(dòng)文件的添加不再作為重點(diǎn),重點(diǎn)開(kāi)始轉(zhuǎn)為程序的編寫(xiě)及小算法的編寫(xiě)。

輸入捕獲的工作原理如下圖所示。

圖片

首先設(shè)置定時(shí)器的輸入通道為上升沿捕獲,檢測(cè)到上升沿之后,將計(jì)數(shù)寄存器CNT中的數(shù)據(jù)存儲(chǔ)在CCRx1中并清空CNT的數(shù)據(jù),然后設(shè)置定時(shí)器的輸入通道為下降沿捕獲,檢測(cè)到下降沿后將計(jì)數(shù)寄存器CNT中的數(shù)據(jù)存儲(chǔ)在CCRx2中并清空CNT的數(shù)據(jù),此時(shí)將CCRx2的值與CCRx1的值做差值就可以得到1個(gè)波形中高電平的時(shí)間,由于這兩個(gè)數(shù)值獲取的過(guò)程中,會(huì)由于高電平時(shí)間過(guò)長(zhǎng)導(dǎo)致定時(shí)器產(chǎn)生多次中斷,這個(gè)多次中斷的值記為N,此時(shí)高電平的時(shí)間計(jì)算公式如下所示:

圖片

其中M為定時(shí)器的計(jì)數(shù)周期,N為定時(shí)器的溢出次數(shù),ARR為自動(dòng)重裝載計(jì)數(shù)器的值,CCRx2為捕獲到的數(shù)據(jù)。

8.2 常用寄存器

8.2.1 捕獲/比較寄存器1:TIMx_CCMR1

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
IC2F[3:0] IC2PSC[1:0] CC2S[1:0] IC1F[3:0] IC1PSC[1:0] CC1S[1:0]

ICxF[3:0]:輸入捕獲x濾波器(定義輸入采樣頻率及數(shù)字濾波器長(zhǎng)度)

圖片

ICxPSC[1:0]:輸入/捕獲x預(yù)分頻器(一旦CCxE=0,則預(yù)分頻器復(fù)位)

00:每1個(gè)事件觸發(fā)一次捕獲

01:每2個(gè)事件觸發(fā)一次捕獲

10:每4個(gè)事件觸發(fā)一次捕獲

11:每8個(gè)事件觸發(fā)一次捕獲

CCxS[1:0]:捕獲/比較x選擇(用于定義通道x輸入還是輸出)

00:輸出模式

01:輸入模式,映射在TI1上

10:輸入模式,映射在TI2上

11:輸入模式,映射在TRC上,此模式引用于內(nèi)部觸發(fā)器輸入被選中時(shí)

8.2.2 捕獲/比較使能寄存器:TIMx_CCER

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- CC4P CC4E - CC3P CC3E - CC2P CC2E - CC1P CC1E

CCxP:輸入/捕獲x輸入/輸出極性

通道在輸出模式下

0:高電平有效

1:低電平有效

通道在輸入模式下

0:不反相,上升沿觸發(fā)

1:反相,下降沿觸發(fā)

CCxE:輸入/捕獲x輸入/輸出使能

通道在輸出模式下

0:關(guān)閉輸出

1:開(kāi)啟輸出

通道在輸入模式下

0:禁止捕獲

1:使能捕獲

8.3 電容觸摸例程

現(xiàn)在PA1端口接一個(gè)觸摸按鍵(一塊銅箔),利用PA1的觸摸按鍵控制PA0端口的LED狀態(tài),按下時(shí)LED點(diǎn)亮,抬起時(shí)LED熄滅。

(1)新建基礎(chǔ)工程,并創(chuàng)建tpad.c,tpad.h,led.c和led.h文件,并導(dǎo)入工程,如下圖所示。

圖片

(2)在tpad.h文件內(nèi)添加以下代碼。

圖片

(3)在led.h文件內(nèi)添加以下代碼

圖片

聲明:本文內(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)注

    87

    文章

    5628

    瀏覽量

    175243
  • 機(jī)械
    +關(guān)注

    關(guān)注

    8

    文章

    1685

    瀏覽量

    41948
  • 電容按鍵
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    STM32各模塊學(xué)習(xí)筆記

    STM32個(gè)模塊學(xué)習(xí)筆記 目錄 STM32筆記之一 中斷優(yōu)先級(jí).......................................
    發(fā)表于 11-30 03:32 ?3248次閱讀

    STM32F1電容觸摸按鍵的詳細(xì)資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是STM32F1電容觸摸按鍵的詳細(xì)資料說(shuō)明。
    發(fā)表于 05-06 16:11 ?34次下載
    <b class='flag-5'>STM32F1</b><b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>按鍵的詳細(xì)資料說(shuō)明

    基于STM32觸摸學(xué)習(xí)筆記資料下載

    電子發(fā)燒友網(wǎng)為你提供基于STM32觸摸學(xué)習(xí)筆記資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到
    發(fā)表于 04-24 08:48 ?37次下載
    基于<b class='flag-5'>STM32</b>的<b class='flag-5'>觸摸</b>屏<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>資料下載

    OpenStackCinder學(xué)習(xí)筆記

    OpenStackCinder學(xué)習(xí)筆記(開(kāi)關(guān)電源技術(shù)教程ppt)-該文檔為OpenStackCinder學(xué)習(xí)
    發(fā)表于 09-23 12:40 ?5次下載
    OpenStack<b class='flag-5'>之</b>Cinder<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>

    51單片機(jī)學(xué)習(xí)筆記數(shù)碼管1顯示數(shù)字0以及使用蜂鳴器

    51單片機(jī)學(xué)習(xí)筆記數(shù)碼管1顯示數(shù)字0以及使用蜂鳴器
    發(fā)表于 11-14 14:36 ?8次下載
    51單片機(jī)<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b>數(shù)碼管<b class='flag-5'>1</b>顯示數(shù)字0以及使用蜂鳴器

    STM32學(xué)習(xí)筆記SysTick

    Systick大有不同,于是作此學(xué)習(xí)筆記。Systick的兩大作用:1、可以產(chǎn)生精確的延時(shí)2、可以提供給操作系統(tǒng)一個(gè)單獨(dú)的心跳(時(shí)鐘)節(jié)拍通常實(shí)現(xiàn)Delay(N)函數(shù)的方法為:    &n
    發(fā)表于 11-25 10:36 ?1次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b>SysTick

    STM32學(xué)習(xí)筆記1——軟硬件基礎(chǔ)keil5編程與GPIO開(kāi)發(fā)

    STM32學(xué)習(xí)筆記1——軟硬件基礎(chǔ)keil5編程與GPIO開(kāi)發(fā)
    發(fā)表于 11-30 12:36 ?4次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>1</b>——軟硬件基礎(chǔ)<b class='flag-5'>之</b>keil5編程與GPIO開(kāi)發(fā)

    STM32學(xué)習(xí)筆記--------day1

    STM32學(xué)習(xí)筆記--------day1
    發(fā)表于 12-05 20:36 ?8次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>--------day<b class='flag-5'>1</b>

    STM32電容觸摸按鍵

    STM32F4 開(kāi)發(fā)板上的觸摸按鍵(TPAD)來(lái)實(shí)現(xiàn)對(duì) DS1 的亮滅控制。這里 TPAD 其實(shí)就是探索者 STM
    發(fā)表于 12-14 18:49 ?39次下載
    【<b class='flag-5'>STM32</b>】<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>按鍵

    STM32學(xué)習(xí)筆記(11)電容觸摸按鍵

    所需時(shí)間T1,當(dāng)觸摸時(shí),觸摸系統(tǒng)相當(dāng)于并聯(lián)多一個(gè)電容,總電容增大,充電時(shí)間延長(zhǎng),通過(guò)測(cè)量此時(shí)充電所需時(shí)間T2,如果T2>T
    發(fā)表于 12-28 19:17 ?5次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>(11)<b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>按鍵

    STM32F1開(kāi)發(fā)指南筆記36----觸摸

    向大家介紹STM32控制戰(zhàn)艦TFTLCD模塊(包括電阻觸摸電容觸摸),實(shí)現(xiàn)觸摸屏驅(qū)動(dòng),最終實(shí)現(xiàn)一個(gè)手寫(xiě)板的功能。
    發(fā)表于 12-31 19:36 ?30次下載
    <b class='flag-5'>STM32F1</b>開(kāi)發(fā)指南<b class='flag-5'>筆記</b>36----<b class='flag-5'>觸摸</b>屏

    stm32學(xué)習(xí)筆記1

    此博客僅個(gè)人學(xué)習(xí)筆記,用以本人學(xué)習(xí)stm32的記錄、分析、總結(jié)。有所錯(cuò)漏再所難免,有則改之無(wú)則加勉。這里就直接以通俗的語(yǔ)言來(lái)記錄了,大家見(jiàn)諒。學(xué)習(xí)
    發(fā)表于 01-18 08:37 ?59次下載
    <b class='flag-5'>stm32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>1</b>

    C語(yǔ)言和STM32學(xué)習(xí)的一些學(xué)習(xí)筆記

    自己總結(jié)的一些C語(yǔ)言和STM32F1學(xué)習(xí)的一些筆記,適合想快速了解學(xué)習(xí)C語(yǔ)言和STM32單片機(jī)的同學(xué)
    發(fā)表于 03-24 14:53 ?36次下載

    STM32入門(mén)學(xué)習(xí)筆記電容觸摸實(shí)驗(yàn)(下)

    隨著科技的發(fā)展,傳統(tǒng)的機(jī)械按鍵正在逐步從設(shè)備上面消失,這個(gè)原因主要有機(jī)械按鍵由于是采用機(jī)械接觸的方式,壽命比較短,從用戶體驗(yàn)上看,機(jī)械按鍵也顯得操作復(fù)雜,對(duì)比現(xiàn)在的電容按鍵,電容按鍵具有壽命長(zhǎng),因?yàn)?/div>
    的頭像 發(fā)表于 02-16 10:22 ?919次閱讀
    <b class='flag-5'>STM32</b>入門(mén)<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>實(shí)驗(yàn)(下)

    STM32學(xué)習(xí)筆記電容觸摸2

    傳統(tǒng)的機(jī)械按鍵正在逐步從設(shè)備上面消失,這個(gè)原因主要有機(jī)械按鍵由于是采用機(jī)械接觸的方式,壽命比較短,從用戶體驗(yàn)上看,機(jī)械按鍵也顯得操作復(fù)雜,對(duì)比現(xiàn)在的電容按鍵,電容按鍵具有壽命長(zhǎng),因?yàn)椴淮嬖跈C(jī)械接觸,占用空間少,以前的機(jī)械按鍵在設(shè)計(jì)外殼的時(shí)候需要考慮尺寸,現(xiàn)在換成
    的頭像 發(fā)表于 05-26 14:41 ?636次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>電容</b><b class='flag-5'>觸摸</b>2