成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

STM32如何實(shí)現(xiàn)輸入捕獲功能

小編給大家分享一下STM32如何實(shí)現(xiàn)輸入捕獲功能,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)是專業(yè)的輝縣網(wǎng)站建設(shè)公司,輝縣接單;提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行輝縣網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

01、STM32捕獲功能

從STM32的定時(shí)器框圖中看

STM32如何實(shí)現(xiàn)輸入捕獲功能

①部分基礎(chǔ)定時(shí)器模塊,已經(jīng)在《STM32基礎(chǔ)定時(shí)器詳解》講解過了。

②部分捕獲/對(duì)比通道模塊,已經(jīng)在《定時(shí)器的PWM功能》講解過了。

③部分是本文的重點(diǎn),輸入捕獲模塊。

從上圖可以看出定時(shí)器1共有4個(gè)輸入捕獲通道。

下文以定時(shí)器1的捕獲通道2為例講解。

首先確定下對(duì)應(yīng)的GPIO,從STM32F207數(shù)據(jù)手冊的Alternatefunction mapping看出,定時(shí)器1通道2對(duì)應(yīng)的GPIO有PA9和PE11,下文將使用PE11。

STM32如何實(shí)現(xiàn)輸入捕獲功能

02、輸入捕獲過程

輸入階段采樣對(duì)應(yīng)的對(duì)輸入TIx,去產(chǎn)生濾波后的信號(hào)TIxF。然后極性選擇邊沿檢測器產(chǎn)生一個(gè)信號(hào)(TIxFPx),這個(gè)信號(hào)可以被用于服務(wù)模式控制器的觸發(fā)輸入或在作為捕獲命令。在捕獲寄存器前被預(yù)分頻。

STM32如何實(shí)現(xiàn)輸入捕獲功能

輸出階段產(chǎn)生一個(gè)中間波形,被用于參考:OCxRef(高電平有效)。鏈地末尾末尾決定極0性。捕獲/比較通道1 主電路。

①處主要是設(shè)置輸入捕獲濾波器,輸入階段采樣對(duì)應(yīng)的對(duì)輸入TIx,去產(chǎn)生濾波后的信號(hào)TIxF。一般應(yīng)用場景不做濾波處理,設(shè)置TIMx_CCMR1的ICF[3:0]=0000,只要采集到上升沿,就觸發(fā)捕獲。

②處主要是設(shè)置輸入捕獲極性,設(shè)置TIMx_CCER的CC1P或CC1NP位,如果通道配置為輸出,為0表示高電平有效,為1表示低電平有效;如果配置成輸入模式,該位選擇是IC1還是IC1的反相信號(hào)作為觸發(fā)或捕獲信號(hào)。為0,表示不反相,為1表示反相。

③處設(shè)置輸入捕獲映射通道,設(shè)置TIMx_CCMR1的CC1S[1:0]位,這2位定義通道的方向(輸入/輸出),及輸入腳的選擇:

0o:CC1通道被配置為輸出;

01:CC1通道被配置為輸入,IC1映射在Tl1上;

10: CC1通道被配置為輸入,IC1映射在TI2上;

11:CC1通道被配置為輸入,IC1映射在TRC上。此模式僅工作在內(nèi)部觸發(fā)器輸入被選中時(shí)(由TIMx_SMCR寄存器的TS位選擇)。

④處設(shè)置輸入捕獲分頻器,TIMx_CCMR1的ICPS[1:0]位和TIMx_CCER的CC1E位。

TIMx_CCMR1的ICPS[1:0]這2位定義了CC1輸入(IC1)的預(yù)分頻系數(shù)。一旦CC1E='O(TIMx_CCER寄存器中),則預(yù)分頻器復(fù)位。

00:無預(yù)分頻器,捕獲輸入口上檢測到的每一個(gè)邊沿都觸發(fā)一次捕獲;

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

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

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

TIMx_CCER的CC1E位

CC1通道配置為輸出:

0:關(guān)閉一OC1禁止輸出。

1:開啟一OC1信號(hào)輸出到對(duì)應(yīng)的輸出引腳。

CC1通道配置為輸入:

該位決定了計(jì)數(shù)器的值是否能捕獲入TIMx_CCR1寄存器。

0:捕獲禁止;

0:捕獲使能。

最后我們還需要設(shè)置中斷,使系統(tǒng)快速響應(yīng)輸入捕獲信號(hào),主要是這只TIMx_DIER寄存器,如下:

STM32如何實(shí)現(xiàn)輸入捕獲功能

使能允許更新中斷和通道2中斷

STM32如何實(shí)現(xiàn)輸入捕獲功能

03、代碼配置

設(shè)置GPIO復(fù)用

/* TIM1 channel 2 pin (PE.11) configuration*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed =GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_OType =GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd =GPIO_PuPd_NOPULL;
GPIO_Init(GPIOE, &GPIO_InitStructure);
 
/*Connect TIM pins to AF2 */
GPIO_PinAFConfig(GPIOE,GPIO_PinSource11, GPIO_AF_TIM1);

設(shè)定定時(shí)基礎(chǔ)功能

/* Time base configuration */
TIM_TimeBaseStructure.TIM_Period =0XFFFF;
TIM_TimeBaseStructure.TIM_Prescaler = (uint16_t)((SystemCoreClock) / 1000000) -1;
TIM_TimeBaseStructure.TIM_ClockDivision =TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode =TIM_CounterMode_Up;
 
TIM_TimeBaseInit(TIM1,&TIM_TimeBaseStructure);

配置通道2

TIM_ICInitStructure.TIM_Channel =TIM_Channel_2;
TIM_ICInitStructure.TIM_ICPolarity =TIM_ICPolarity_Falling;
TIM_ICInitStructure.TIM_ICSelection =TIM_ICSelection_DirectTI;
TIM_ICInitStructure.TIM_ICPrescaler =TIM_ICPSC_DIV1;
TIM_ICInitStructure.TIM_ICFilter =0x0;
 
TIM_ICInit(TIM1, &TIM_ICInitStructure);

使能中斷

/* Enable the TIM1 global Interrupt*/
NVIC_InitStructure.NVIC_IRQChannel =TIM1_CC_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority= 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority =1;
NVIC_InitStructure.NVIC_IRQChannelCmd =ENABLE;
NVIC_Init(&NVIC_InitStructure);
 
NVIC_InitStructure.NVIC_IRQChannel =TIM1_UP_TIM10_IRQn;
NVIC_InitStructure.NVIC_IRQChannelSubPriority= 2;
NVIC_Init(&NVIC_InitStructure);
 
/* Enablethe CC2 Interrupt Request */
TIM_ITConfig(TIM1,TIM_IT_CC2|TIM_IT_Update, ENABLE);

使能定時(shí)器1

/* TIM enable counter */
TIM_Cmd(TIM1, ENABLE);

下載代碼驗(yàn)證測試

STM32如何實(shí)現(xiàn)輸入捕獲功能

看完了這篇文章,相信你對(duì)“STM32如何實(shí)現(xiàn)輸入捕獲功能”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章題目:STM32如何實(shí)現(xiàn)輸入捕獲功能
標(biāo)題路徑:http://jinyejixie.com/article12/gdpgdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、品牌網(wǎng)站設(shè)計(jì)移動(dòng)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
平谷区| 深州市| 合川市| 上犹县| 土默特右旗| 青龙| 上高县| 大悟县| 新邵县| 余江县| 望江县| 彩票| 武宣县| 遂溪县| 庆安县| 原平市| 高台县| 龙井市| 大洼县| 廉江市| 外汇| 政和县| 富平县| 武川县| 浦县| 乌恰县| 斗六市| 锡林郭勒盟| 四子王旗| 三台县| 咸阳市| 藁城市| 沧州市| 武强县| 五峰| 手游| 环江| 岑溪市| 余干县| 万荣县| 台湾省|