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

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

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

STM32F0xx_TIM輸入捕獲(計(jì)算頻率) 配置詳細(xì)過(guò)程

黃工的嵌入式技術(shù)圈 ? 來(lái)源:黃工的嵌入式技術(shù)圈 ? 2020-04-07 10:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

關(guān)于STM32定時(shí)器,可謂是功能強(qiáng)大,估計(jì)沒(méi)有多少人研究完STM32定時(shí)器的所有功能(包括我也沒(méi)有),只是使用常用的一些功能,后續(xù)我會(huì)推出關(guān)于STM32定時(shí)器的更多功能。

STM32芯片多數(shù)為16位計(jì)數(shù),但基本上都有1個(gè)或兩個(gè)32位的定時(shí)器,可惜的是我們最常使用的F1系列芯片中沒(méi)有32位的定時(shí)器,F(xiàn)030中也沒(méi)有,具體請(qǐng)看數(shù)據(jù)手冊(cè)。

今天主要總結(jié)關(guān)于STM32F0系列輸入捕獲,捕獲信號(hào)頻率,即所謂邏輯分析儀檢測(cè)數(shù)字頻率的功能。

今天使用32位的TIM2作為捕獲的定時(shí)器,為什么是32位,原因很簡(jiǎn)單,就是為了捕獲(采集)更寬頻率的波形,今天提供的工程可以采集0Hz - 10MHz的波形(建議2MHz一下,串口打印需要時(shí)間)。而16位就不行,提醒使用F1的朋友要注意這一點(diǎn)。官方提供的例程也是16位,檢測(cè)的范圍同樣有限。

下載

ST標(biāo)準(zhǔn)外設(shè)庫(kù)和參考手冊(cè)、數(shù)據(jù)手冊(cè)等都可以在ST官網(wǎng)下載,你也可以到我的360云盤(pán)下載。關(guān)于F0系列芯片的參考手冊(cè)有多個(gè)版本(針對(duì)F0不同芯片),但有一個(gè)通用版本,就是“STM32F0x128參考手冊(cè)V8(英文)2015-07”建議參考該手冊(cè),以后如果你換用一種型號(hào)芯片也方便了解。

今天的軟件工程下載地址(360云盤(pán)):

https://yunpan.cn/cSztEbetLczKY訪問(wèn)密碼 06d0

STM32F0xx的資料可以在我360云盤(pán)下載:

https://yunpan.cn/cS2PVuHn6X2Bj訪問(wèn)密碼 8c37

今天工程測(cè)試效果(視頻):

https://yunpan.cn/cSziVGGZbMagj訪問(wèn)密碼 5731

準(zhǔn)備工作

今天總結(jié)的軟件工程是基于“TIM基本延時(shí)配置詳細(xì)過(guò)程”修改而來(lái),因此需要將該軟件工程下載準(zhǔn)備好。今天將源代碼添加在timer.c文件里面,就不需要新建文件了。

捕獲原理

看系統(tǒng)框圖,今天使用分頻的方式來(lái)采集波形,官方提供的例程是沒(méi)有配置TimeBase參數(shù),也沒(méi)有分頻,分頻的好處在于不是非常實(shí)時(shí)的獲取波形,這樣有利于提供精度(可以說(shuō)是計(jì)算平均值)。捕獲外部8個(gè)脈沖,前后讀取一下計(jì)數(shù)的值,這個(gè)值就是外部脈沖的差值,從而計(jì)算出頻率。


配置過(guò)程詳情

①RCC時(shí)鐘


該函數(shù)位于bsp.c文件下面;

我個(gè)人習(xí)慣第一步配置時(shí)鐘,ST官方提供的例程也是把配置時(shí)鐘放在前面。關(guān)于RCC時(shí)鐘的配置比較重要,有好幾次我就是由于忘記配置相應(yīng)RCC時(shí)鐘,讓我找了很久的問(wèn)題,最后才發(fā)現(xiàn)是RCC時(shí)鐘沒(méi)有配置。

注意:

外設(shè)時(shí)鐘不要隨便添加,比如:RCC_APB1外設(shè)不要配置在RCC_APB2時(shí)鐘里面【如:RCC_APB2PeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);這樣能編譯過(guò),但是錯(cuò)誤的】

我每次都提醒RCC時(shí)鐘,是因?yàn)楹芏嗳司褪且驗(yàn)闀r(shí)鐘而導(dǎo)致軟件運(yùn)行有問(wèn)題,所以,提醒更多人要注意配置RCC.

②捕獲引腳配置


該函數(shù)位于timer.c文件下面;

重點(diǎn)注意:

引腳配置要和對(duì)應(yīng)通道匹配才行(請(qǐng)看數(shù)據(jù)手冊(cè)中的引腳說(shuō)明)。

復(fù)用功能同樣也是需要配置。

③TIM捕獲配置

該函數(shù)位于timer.c文件下面;

這里的分頻值配置為一樣,方便計(jì)算。

④捕獲頻率的計(jì)算


該函數(shù)位于stm32f0xx_it.c文件下面;

這個(gè)函數(shù)就是捕獲中斷函數(shù),采集8個(gè)脈沖的前后中斷一次,即讀取一下計(jì)數(shù)值,通過(guò)計(jì)數(shù)值的差就可以算出頻率了。

說(shuō)明

STM32F0的芯片軟件兼容性很好,可以適用于F0其他很多型號(hào)的芯片(具體請(qǐng)看手冊(cè)、或者親自測(cè)試)。

今天的工程是基于工程“STM32F0xx_TIM基本延時(shí)配置詳細(xì)過(guò)程”修改而來(lái),以上實(shí)例總結(jié)僅供參考,若有不對(duì)之處,敬請(qǐng)諒解。

聲明:本文內(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)投訴
  • Tim
    Tim
    +關(guān)注

    關(guān)注

    0

    文章

    83

    瀏覽量

    18287
  • 信號(hào)捕獲
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    8746
  • STM32F0
    +關(guān)注

    關(guān)注

    0

    文章

    61

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    使用STM32捕獲PWM時(shí)同時(shí)捕獲2個(gè)通道時(shí)會(huì)出現(xiàn)捕獲頻率值不準(zhǔn)確,是什么原因?qū)е碌模?/a>

    在使用STM32F103芯片的2個(gè)定時(shí)器捕獲2路PWM波時(shí),當(dāng)2路信號(hào)同時(shí)輸入時(shí),會(huì)出現(xiàn)捕獲頻率不準(zhǔn)確,但是分開(kāi)一路一路的
    發(fā)表于 05-14 06:24

    使用STM32捕獲PWM時(shí)同時(shí)捕獲2個(gè)通道時(shí)會(huì)出現(xiàn)捕獲頻率值不準(zhǔn)確是什么原因?qū)е碌模?/a>

    在使用STM32F103芯片的2個(gè)定時(shí)器捕獲2路PWM波時(shí),當(dāng)2路信號(hào)同時(shí)輸入時(shí),會(huì)出現(xiàn)捕獲頻率不準(zhǔn)確,但是分開(kāi)一路一路的
    發(fā)表于 04-27 08:39

    使用STM32捕獲PWM時(shí)同時(shí)捕獲2個(gè)通道時(shí)會(huì)出現(xiàn)捕獲頻率值不準(zhǔn)確的問(wèn)題,是什么原因?qū)е碌模?/a>

    在使用STM32F103芯片的2個(gè)定時(shí)器捕獲2路PWM波時(shí),當(dāng)2路信號(hào)同時(shí)輸入時(shí),會(huì)出現(xiàn)捕獲頻率不準(zhǔn)確,但是分開(kāi)一路一路的
    發(fā)表于 04-25 08:29

    使用STM32捕獲PWM時(shí)同時(shí)捕獲2個(gè)通道時(shí)會(huì)出現(xiàn)捕獲頻率值不準(zhǔn),為什么?

    在使用STM32F103芯片的2個(gè)定時(shí)器捕獲2路PWM波時(shí),當(dāng)2路信號(hào)同時(shí)輸入時(shí),會(huì)出現(xiàn)捕獲頻率不準(zhǔn)確,但是分開(kāi)一路一路的
    發(fā)表于 04-22 10:43

    TIM2輸入捕獲,DMA開(kāi)啟中斷傳輸輸入捕獲數(shù)據(jù),程序跑的過(guò)程中,DMA一直中斷,TIM6只觸發(fā)一次中斷,怎么解決?

    TIM2捕獲輸入的數(shù)據(jù),并且通過(guò)DMA存儲(chǔ),在開(kāi)啟DMA中斷同時(shí),TIM6中斷也開(kāi)啟(用于計(jì)時(shí))。但是程序跑的過(guò)程中,DMA一直中斷,
    發(fā)表于 03-14 06:39

    STM32G474利用高精度HRTIM怎么捕獲外部波形計(jì)算波形頻率?

    STM32G474 利用高精度HRTIM怎么捕獲外部波形計(jì)算波形頻率,想用STM32Cube配置
    發(fā)表于 03-10 06:29

    無(wú)法通過(guò)DMA讀取輸入捕獲寄存器的值

    想法:使用HC-SR04超聲波模塊檢測(cè)距離,利用輸入捕獲計(jì)算模塊高電平的時(shí)間與DMA傳輸輸入捕獲寄存器的數(shù)值。
    發(fā)表于 02-10 14:31

    STM32F405xxSTM32F407xx微控制器數(shù)據(jù)手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《STM32F405xxSTM32F407xx微控制器數(shù)據(jù)手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 01-03 14:49 ?2次下載

    使用STM32F1輸入捕獲功能時(shí),TIM6和TIM7無(wú)法實(shí)現(xiàn)輸入捕獲是哪里的問(wèn)題?

    使用STM32F1輸入捕獲功能時(shí),TIM6和TIM7無(wú)法實(shí)現(xiàn)輸入
    發(fā)表于 09-27 09:11

    STM32的一個(gè)芯片測(cè)PWM輸入頻率有的時(shí)候不對(duì)是什么原因造成的?

    2個(gè),即使__HAL_TIM_GetCounter放到前面。 我用的是TIM10和TIM13分別做兩路PWM輸入捕獲,每個(gè)定時(shí)器都是先測(cè)上升
    發(fā)表于 09-27 08:21

    【GD32 MCU 移植教程】8、從 STM32F4xx 系列移植到 GD32F4xx

    GD32F4xx 系列 MCU 是基于 Arm? Cortex?-M4 處理器的 32 位通用微控制器,與 STM32F4xx系列 MCU 保持高度兼容。本文主要從以下三個(gè)方面進(jìn)行介紹:硬件資源對(duì)比
    的頭像 發(fā)表于 09-06 09:40 ?2496次閱讀
    【GD32 MCU 移植教程】8、從 <b class='flag-5'>STM32F4xx</b> 系列移植到 GD32<b class='flag-5'>F4xx</b> 系

    STM32CUBEMX(5)--自定義紅外NEC解碼,定時(shí)器TIM捕獲方式

    芯片型號(hào) 配置時(shí)鐘源 HSE與LSE分別為外部高速時(shí)鐘和低速時(shí)鐘,在本文中使用內(nèi)置的時(shí)鐘源,故都選擇Disable選項(xiàng),如下所示: 配置時(shí)鐘樹(shù) STM32F0的最高主頻到48M,所以配置
    發(fā)表于 09-05 16:19

    STM32F103如何測(cè)量?jī)蓚€(gè)方波的相位差?

    實(shí)現(xiàn),目前只實(shí)現(xiàn)輸入捕獲能量測(cè)單一訊號(hào)的周期及頻率,但兩個(gè)信號(hào)來(lái)做判斷就不太知道該怎么去設(shè)置及判斷板子是STM32F103C8T6,TIM2
    發(fā)表于 07-23 08:20

    TIM捕獲TC399 KIT的TOM輸出,為什么?

    我正在使用該 KIT [TC399],并嘗試使用該示例 GTM_TIM_Capture_1_KIT_TC397_TFT 在 TIM捕獲 TOM 輸出,并計(jì)算
    發(fā)表于 07-23 06:36

    STM32F10xx芯片資料

    電子發(fā)燒友網(wǎng)站提供《STM32F10xx芯片資料.pdf》資料免費(fèi)下載
    發(fā)表于 07-08 14:56 ?1次下載

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品