国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32定時(shí)器-輸入捕獲

這篇具有很好參考價(jià)值的文章主要介紹了STM32定時(shí)器-輸入捕獲。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

定時(shí)器-輸入捕獲

輸入捕獲工作過程

一句話總結(jié)工作過程:通過檢測(cè)TIMx_CHx上的邊沿信號(hào),在邊沿信號(hào)發(fā)生跳變(比如上升沿/下降沿)的時(shí)候,將當(dāng)前定時(shí)器的值(TIMx_CNT)存放到對(duì)應(yīng)的捕獲/比較寄存器(TIMxCCRx)里面,完成一次捕獲。

步驟1:設(shè)置輸入捕獲濾波器(通道1為例)

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

輸入捕獲1濾波器ICIF[3:0],這個(gè)用來設(shè)置輸入采樣頻率和數(shù)字濾波器長(zhǎng)度。其中, fck_INT是定時(shí)器的輸入頻率(TIMxCLK),一般為72Mhz,而 fDTS 則是根據(jù)TIMx_CR1的CKD[1:0]的設(shè)置來確定的,如果CKD[1:0]設(shè)置為00,那么fDTS=fck_INT。N值就是濾波長(zhǎng)度,舉個(gè)簡(jiǎn)單的例子:假設(shè)ICIF[3:0]=0011,并設(shè)置IC1映射到通道1上,且為上升沿觸發(fā),那么在捕獲到上升沿的時(shí)候,再以fck_INT的頻率,連續(xù)采樣到8次通道1的電平,如果都是高電平,則說明這是一個(gè)有效的觸發(fā),就會(huì)觸發(fā)輸入捕獲中斷(如果開啟了的話)。這樣可以濾除那些高電平脈寬低于8個(gè)采樣周期的脈沖信號(hào),從而達(dá)到濾波的效果。這里,我們不做濾波處理,所以設(shè)置ICIF[3:0]=0000,只要采集到上升沿,就觸發(fā)捕獲。

連續(xù)采集8次通道1的電平,起濾波的作用

步驟2:設(shè)置輸入捕獲極性(通道1為例)

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

步驟3:設(shè)置輸入捕獲映射通道(通道1為例)

一般情況下通道1映射到IC1,通道2映射到IC2

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

步驟四:設(shè)置輸入捕獲分頻器(通道1為例)

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

步驟五:捕獲到有效信號(hào)可以開啟中斷

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)

輸入捕獲通道初始化函數(shù):

void TIM_ICInit(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct);

結(jié)構(gòu)體類型

typedef struct
{
    uint16_t TIM_Channel;			//捕獲通道1-4
    uint16_t TIM_ICPolarity;		//捕獲極性
    uint16_t TIM_ICSelection;		//映射關(guān)系
    uint16_t TIM_ICPrescaler;		//分頻系數(shù)
    uint16_t TIM_ICFilter;			//濾波器
} TIM_ICInitTypeDef;

初始化例子

TIM5_ICInitStructure.TIM_Channel = TIM_Channel_1;
TIM5_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;
TIM5_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTl;
TIM5_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
TIM5_ICInitStructure.TIM_ICFilter = Ox00;
TIM_ICInit(TIM5,&TIM5_ICInitStructure);

通道極性設(shè)置獨(dú)立函數(shù):

void TIM_OCxPolarityConfig(TIM_TypeDef* TIMx,uint16_t TIM_OCPolarity

獲取通道捕獲值

uint32_t TIM_GetCapture1(TIM_TypeDef* TIMx);

輸入捕獲的一般配置步驟:

1、初始化定時(shí)器和通道對(duì)應(yīng)IO的時(shí)鐘。

2、初始化IO口,模式為輸入: GPIO Init();

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; 	//PAO輸入

3、初始化定時(shí)器ARR, PSC

TIM_TimeBaselnit();

4、初始化輸入捕獲通道

TIM_ICInit();

5、如果要開啟捕獲中斷

TIM_ITConfig();
NVIC_Init();

6、使能定時(shí)器

TIM_Cmd();

7、編寫中斷服務(wù)函數(shù):

TIMx_IRQHandler();

實(shí)驗(yàn)?zāi)康模簻y(cè)量信號(hào)的脈沖寬度

定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)
定時(shí)器輸入捕獲,STM32,stm32,單片機(jī),arm,學(xué)習(xí)文章來源地址http://www.zghlxwxcb.cn/news/detail-608425.html

到了這里,關(guān)于STM32定時(shí)器-輸入捕獲的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • STM32定時(shí)器(輸入捕獲)

    STM32定時(shí)器(輸入捕獲)

    ?上一章講了輸出比較的內(nèi)容,輸出比較就是定時(shí)器自增,同時(shí)和CCR比較,按照自己設(shè)置的比較要求,輸出REF高低電平,這一章我們講下面結(jié)構(gòu)圖輸出比較左邊部分,也就是 輸入捕獲 首先,介紹一下輸入捕獲 IC(input capture)輸入捕獲,輸入捕獲模式下,當(dāng)通道輸入引腳出現(xiàn)

    2024年02月09日
    瀏覽(21)
  • stm32 定時(shí)器輸入捕獲實(shí)驗(yàn)

    stm32 定時(shí)器輸入捕獲實(shí)驗(yàn)

    目錄 一,簡(jiǎn)介 二,配置過程 ?一,設(shè)置輸入捕獲濾波器? 二,設(shè)置輸入極性 三,設(shè)置輸入捕獲映射通道 ?四,設(shè)置輸入捕獲分頻器 ?五,設(shè)置中斷? ?三,寄存器 四,庫(kù)函數(shù) 五,一般步驟? ?六,軟件部分 輸入捕獲模式可以用來測(cè)量脈沖寬度或者測(cè)量頻率 原理圖 如圖 ?

    2024年01月21日
    瀏覽(18)
  • STM32 定時(shí)器輸入捕獲2——捕獲高電平時(shí)長(zhǎng)

    STM32 定時(shí)器輸入捕獲2——捕獲高電平時(shí)長(zhǎng)

    ????????由上圖我們可以知道,高電平時(shí)間=t2-t1。在代碼中,可以記錄此時(shí)t1的時(shí)間然后再記錄t2的時(shí)間,t2-t1,就是我們所想要的答案。 ? ? ? ? 但是,還有更簡(jiǎn)單一點(diǎn)點(diǎn)的,當(dāng)?shù)竭_(dá)t1的時(shí)候,我們把定時(shí)器清零,然后直接讀出t2,就是這個(gè)高電平的時(shí)間。 1.當(dāng)TIM3的TIM_F

    2024年01月18日
    瀏覽(26)
  • STM32 定時(shí)器輸入捕獲3——捕獲超長(zhǎng)高電平

    ? ? ? ? 第一章:https://blog.csdn.net/m0_73671341/article/details/134773615?spm=1001.2014.3001.5501 ? ? ? ? 第二章:https://blog.csdn.net/m0_73671341/article/details/134938332?spm=1001.2014.3001.5501 ????????從第一章的定時(shí)器捕獲我們可以知道,即使把定時(shí)器捕獲時(shí)長(zhǎng)設(shè)置到最大也只有65.536ms,而第二章就

    2024年01月18日
    瀏覽(19)
  • STM32標(biāo)準(zhǔn)庫(kù)通用定時(shí)器輸入捕獲

    STM32標(biāo)準(zhǔn)庫(kù)通用定時(shí)器輸入捕獲

    輸入捕獲為STM32定時(shí)器的一個(gè)功能,可以用來測(cè)量輸入信號(hào)的頻率和占空比。 具體原理:當(dāng)輸入信號(hào)經(jīng)過比較捕獲通道時(shí),STM32會(huì)依據(jù)通道的極性設(shè)置決定是否觸發(fā)捕獲中斷TIM_IT_CCx。此時(shí)定時(shí)器會(huì)將當(dāng)前計(jì)數(shù)值TIMx-CNT的值保存在TIMx-CCRx中,通過計(jì)算兩次捕獲中斷的時(shí)間差便可

    2024年03月11日
    瀏覽(15)
  • STM32F4_定時(shí)器輸入捕獲詳解

    STM32F4_定時(shí)器輸入捕獲詳解

    目錄 1. 輸入捕獲簡(jiǎn)介 2. 輸入捕獲框圖 3. 輸入捕獲模式 4. 相關(guān)寄存器 4.1 TIMx_ARR、TIMx_PSC 4.2 捕獲/比較寄存器1:TIMx_CCMR1 4.3 捕獲/比較使能寄存器 TIMx_CCER 4.4 中斷使能寄存器 TIMx_DIER 5. 庫(kù)函數(shù)配置輸入捕獲高電平脈沖寬度 6. 實(shí)驗(yàn)程序 6.1 main.c 6.2 IntputCapture.c 6.3 IntputCapture.h ???

    2024年02月04日
    瀏覽(22)
  • STM32定時(shí)器輸入捕獲測(cè)量高電平時(shí)間

    STM32定時(shí)器輸入捕獲測(cè)量高電平時(shí)間

    本篇內(nèi)容要求讀者對(duì)STM32通用定時(shí)器有一點(diǎn)理解,如有不解,請(qǐng)看 夜深人靜學(xué)32系列15——通用定時(shí)器 輸入捕獲是STM32通用定時(shí)器的一種功能,可以捕獲特定引腳的電平變化(上升沿/下降沿) 對(duì)于一個(gè)變化的信號(hào)。只需要測(cè)量上升沿與下降沿的時(shí)間間隔,即可計(jì)算出高電平的

    2024年02月21日
    瀏覽(20)
  • STM32CubeMX系列06——定時(shí)器(定時(shí)、PWM、輸入捕獲)

    STM32CubeMX系列06——定時(shí)器(定時(shí)、PWM、輸入捕獲)

    ==== 文章匯總(有代碼匯總) ==== 正點(diǎn)原子Mini板,主控 STM32F103RCT6. 定時(shí)器簡(jiǎn)介 這里主要討論通用定時(shí)器(系統(tǒng)嘀嗒定時(shí)器、看門狗定時(shí)器、RTC定時(shí)器不考慮在內(nèi)) 對(duì)于STM32F103RCT6 單片機(jī): 2個(gè)基本定時(shí)器。分別是 TIM6 、 TIM7 。只能16位向上計(jì)數(shù)、沒有IO口,沒有捕獲和比較通

    2024年02月01日
    瀏覽(26)
  • STM32 HAL庫(kù) STM32CubeMX -- TIM(定時(shí)器輸入捕獲)

    STM32 HAL庫(kù) STM32CubeMX -- TIM(定時(shí)器輸入捕獲)

    輸入捕獲可以對(duì) 輸入的信號(hào)的上升沿、下降沿或者雙邊沿進(jìn)行捕獲 ,常用的有 測(cè)量輸入信號(hào)的脈寬 和 測(cè)量PWM 輸入信號(hào)的頻率 和 占空比 這兩種。 輸入捕獲的原理 就是,當(dāng)捕獲到信號(hào)的跳變沿的時(shí)候,把計(jì)數(shù)器CNT 的值鎖存到捕獲寄存器CCR 中,把前后兩次捕獲到的CCR 寄存

    2023年04月14日
    瀏覽(18)
  • STM32 HAL庫(kù)定時(shí)器輸入捕獲SlaveMode脈寬測(cè)量

    STM32 HAL庫(kù)定時(shí)器輸入捕獲SlaveMode脈寬測(cè)量

    ??SlaveMode模式簡(jiǎn)介 ?SlaveMode復(fù)位模式:在發(fā)生一個(gè)觸發(fā)輸入事件時(shí),計(jì)數(shù)器和它的預(yù)分頻器能夠重新被初始化;同時(shí),如果TIMx_CR1寄存器的URS位為低,還會(huì)產(chǎn)生一個(gè)更新事件UEV;然后所有的預(yù)裝載寄存器(TIMx_ARR, TIMx_CCRx)都會(huì)被更新。 ??當(dāng)所測(cè)頻率低于最小定時(shí)器捕獲頻率

    2024年02月16日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包