STM32開發筆記3: STM32F407定時器2-5的使用方法

2020-12-23 電子工程世界網

單片機型號:STM32F407


    STM32F4有多種定時器,其中TIM2-TIM5稱為通用定時器,具有相似的軟體設置及使用方法。在這裡還需要注意的是TIM3和TIM4為16位定時器,TIM2和TIM5為32位定時器。


    使用TIM2-5可以遵循以下步驟:


    1、打開config.h文件,對如下圖所示的宏進行設置,設置為0表示不啟動相應的定時器,設置為1表示當前定時器定時1ms,設置為2表示當前定時器定時10ms,設置為3表示當前定時器定時100ms,設置為4表示當前定時器為1s。



    上圖所示的設置結果為,啟動定時器2設置為1ms定時,啟動定時器5設置為1s定時,定時器3和定時器4沒有啟動。


    2、打開main.c文件,在相應的中斷函數中填入邏輯代碼,如下圖所示:

 

 

    上圖所示的代碼表明定時器2定時為1ms用於處理通訊計數,定時器5定時為100ms驅動L2燈進行反轉操作,定時器3和定時器4由於沒有使能條件編譯,其代碼無效。


關鍵字:STM32  STM32F407  定時器  使用方法 編輯:什麼魚 引用地址:http://news.eeworld.com.cn/mcu/ic468261.html

推薦閱讀

STM32項目(三)——通用LIN控制器

需求:LIN馬達控制器:AFS(DHL+AFL)——彎道輔助照明系統DHL:上極限,下極限,零位,馬達老化循環;AFL:左極限,右極限,零位,馬達老化循環;所有參數可配置:上極限,下極限,零位,左極限,右極限,馬達循環上極限,馬達循環下極限,馬達循環次數,馬達循環等待時間;保存至少30款產品的配置,配置界面需要有添加,讀取,查找,刪除功能。方案:STM32 + LIN + 串口(使用NXP的串口屏,TJA系列的LIN晶片)STM32的LIN接口作為主節點,馬達作為從節點。系統設計:RTX多任務設計,串口處理任務,顯示屏處理任務,LIN發送任務;(1)、串口處理任務:點擊串口屏會獲取到點擊的坐標值,串口中斷接受到數據加入到隊列;任務

發表於 2020-12-09

STM32項目(二) —— 車燈測試臺架

需求:(1)、點燈控制器:在線節拍,離線節拍;(2)、PWM控制盒:在線PWM,離線PWM;(3)、電流測試模塊:檢測車燈電流校準係數;方案:點燈控制器:STM32 + CAN + GPIO節拍:比如亮多長時間,滅多長時間;大節拍中嵌套多個小節拍,每個燈對應相同或者不同的節拍。上位機下發控制指令,表明此時是在線還是離線。(離線跑的節拍是在在線模式下下載的)在線模式:如果是直接輸出,按照指定格式下發CAN消息,MCU接受消息並解析,切繼電器點燈;如果是存儲節拍,MCU內部Flash存儲上位機通過CAN下發的點燈節拍。離線模式:從內部Flash中讀取節拍,並控制繼電器點燈;模式切換按鈕:不僅可以通過上位機控制在線/離線模式,還可

發表於 2020-12-09

STM32項目(一) —— 展示車座椅

功能:模擬人開車時,ACR和ABL的變化。 主控制器:STM32(CAN,串口,網口,輸入,輸出)上位機:LibView ACR:卷收器(座椅上面的安全帶)ABL:電機(座椅右下角接安全帶的插孔)PUMA:控制器發送CAN給PUMA,PUMA控制ACR和ABL(DBC文件的解析);ACR通過CAN控制,ABL通過PWM控制電機。 STM32硬體接口:按鍵盒8路輸入,網口與工控機軟體通信,CAN1直接控制ACR,CAN2給PUMA信號控制ACR,串口與上位機軟體通信(控制方向盤震動)。 主要有兩塊功能:靜態模式和遊戲模式。 靜態模式:UC-WinRoad沒工作時,STM32檢測

發表於 2020-12-09

STM32——GPIO(2)

, GPIO_InitTypeDef* GPIO_InitStruct){  uint32_t currentmode = 0x00, currentpin = 0x00, pinpos = 0x00, pos = 0x00;  uint32_t tmpreg = 0x00, pinmask = 0x00;  /* 斷言,用於檢查輸入的參數是否正確 */  assert_param(IS_GPIO_ALL_PERIPH(GPIOx));  assert_param(IS_GPIO_MODE(GPIO_InitStruct->GPIO_Mode));  assert

發表於 2020-12-09

Octonion全新AI工業狀態監測擴展軟體包可在STM32 MCU完美運行

專業開發工業設備診斷邊緣人工智慧(AI)的深度技術軟體公司Octonion 發布了一個STM32Cube擴展軟體包。該軟體包是針對來自橫跨多重電子應用領域的全球領先的半導體供應商意法半導體(STMicroelectronics,簡稱ST;紐約證券交易所代碼:STM)的工業級STM32L4 +微控制器開發板的優化過的狀態監測解決方案。 Octonions的新軟體包支持意法半導體在快速增長的工業狀態監測和預測性維護市場上發起的使用STM32微控制器和微處理器開發人工智慧應用的市場活動。Octonion的I-CUBE-OCTMI 軟體包是一個運行在STM32 超低功耗MCU上的自我維護系統,系統

發表於 2020-12-09

STM32——流水燈

stm32f10x_conf.h:打開stm32f10x_gpio.h和stm32f10x_rcc.h;stm32f10x_gpio.c 和 stm32f10x_rcc.c加入工程模板中,只說重點。【stm32f10x_rcc.c用於配置系統時鐘 和外設時鐘,由於每個外設都要配置時鐘,所以它是每個外設都需要用到的庫文件。】// 新建led.h  led.c#ifndef  _LED_H_#define  _LED_H_ #include "stm32f10x.h" #define ON  0#define OFF 1 #define LED1

發表於 2020-12-08

相關焦點

  • stm32F407的TIM定時器輸出PWM波
    今天測試了stm32F407的TIM定時器輸出PWM波,了解了其配置過程。clock為你所需要的TXM的定時器時鐘3.PWM的幅值為3.3V/************************************************************Copyright (C), 2012-2022, yin.
  • Ubuntu系統下安裝stm32官方開發工具STM32CubeIDE
    大家好,遊學電子科技為您帶來:Ubuntu系統下安裝stm32官方開發工具STM32CubeIDE。STM32CubeIDE是st意法官方提供的stm32開發工具,這款工具在編譯速度上具有比較高的優勢,尤其是跟keil5相比真是沒得說。
  • STM32F429的定時器的使用方法
    我是根據之前一直使用STM32F103的工程目錄改了一下,使用STM32F4XX的最新固件庫V1.6.1,至於為何不去直接操作寄存器,我想,雖然自己是硬體出身,搞寄存器更深入的了解處理器,但是,畢竟寄存器過多,有了庫,可以封裝一下,這樣更可以快速的上手。如果需要查看寄存器,也是可以查的。
  • STM32之時鐘頻率和定時器時鐘講解
    ********************************本學習筆記基於STM32固件庫V3.0使用晶片型號:STM32F103開發環境:MDK********************************本文引用地址:http://www.eepw.com.cn
  • 如何實現STM32F407單片機的ADC轉換
    用到的引腳是PA3也就是ADC1的通道3 1、ADC的主要參數 a、解析度----stm32f407的解析度有6位、8位、10位、12位,參考電壓如果是3.3 那麼最小解析度就是3.3/4095。 b、轉換時間----stm32f407的最高允許頻率是36M,最快轉換時間 = 3+12個周期 =0.71us。
  • STM32F10x互補輸出TIM_OutputState,TIM_OutputNState的意思
    STM32學習筆記——高級定時器TIM1更新中斷配置 stm32高級定時器TIM1下圖是stm32參考手冊中對該寄存器的詳細解釋:總結一下高級定時器溢出中斷配置的步驟:1,時鐘使能2,配置預分頻、自動重裝值和重複計數值3,清除中斷標誌位(否則會先進一次中斷 發表於 2020-12-03
  • STM32CubeMX使用方法及功能介紹
    Ⅱ、STM32CubeMX主界面描述打開安裝好的STM32CubeMX,看到其主界面如下:主要看到信息有:1.STM32CubeMX的新建工程其實很簡單,如果需要有複雜的配置,整個工程就有很多細節的地方需要注意,這些在今後文章結合相關的例程來講述。 1.打開STM32CubeMX軟體,點擊「新建工程」:
  • STM32定時器時間的計算方法
    STM32定時器時間的計算方法 STM32中的定時器有很多用法: (一)系統時鐘(SysTick) 設置非常簡單,以下是產生1ms中斷的設置,和產生10ms延時的函數:RCC_Configuration()的SystemInit()的 RCC-》CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV2表明TIM3CLK為72MHz。
  • stm32通用定時器用做外部脈衝計數器的例程
    最近幾天要用到stm32對外部輸入脈衝進行計數,很自然想到定時器,可是手上資料沒有講解stm32定時器如何用作外部計數器的,在網上找例程,也沒找到幾個正確的,自己硬著頭皮仔細研究參考手冊,終於知道如何配置了,並寫了一個例程,希望將來對一些網友有用。
  • stm32CubeMx CAN 發送數據
    於工作內容的變動,我已經很久沒有正經的玩過單片機了,近期又要用它做個小玩意了,還是選 stm32 吧,外設庫開發不要太方便,哈哈哈先去 stm32 社區逛了逛,發現了一個新字眼 STM32CubeMX,簡單看了下,大概明白是個 ST 公司新推出的一個配置工具,直接由圖形界面簡單配置下,生成初始化代碼,並對外設做了進一步的抽象,讓開發人員更只專注應用的開發,
  • STM32F4-浮點DSP庫的MDK開發環境的設置
    2. 打開 option for target 選擇 Target 標籤,在code generatio中,將floating point hardware 選擇 USE FPU。3. 編譯你的工程,保證通過。當然也不一定需要編譯通過,先做編譯是為了後面添加浮點庫做準備,這樣發現問題和知道哪裡出問題。4.
  • STM32單片機的定時器和ADC的應用方法介紹
    開啟兩個定時器給FPGA使用 要求是 一、定時器可以在任何時刻關閉,就算計數不滿也要停 二、定時器在再次開啟時可以從0計數 三、定時器可以在啟動過程中停止,然後更改定時周期再開始從0計數
  • STM32開發筆記74: STM32L0低功耗喚醒後的時鐘選擇
    ,第3句選擇喚醒後的主始終,第4句將所有IO引腳設置為低功耗狀態。方案:STM32 + LIN + 串口(使用NXP的串口屏,TJA系列的LIN晶片)STM32的LIN接口作為主節點,馬達作為從節點。該軟體包是針對來自橫跨多重電子應用領域的全球領先的半導體供應商意法半導體(STMicroelectronics,簡稱ST;紐約證券交易所代碼:STM)的工業級STM32L4 +微控制器開發板的優化過的狀態監測解決方案。 Octonions的新軟體包支持意法半導體在快速增長的工業狀態監測和預測性維護市場上發起的使用STM32微控制器和微處理器開發人工智慧應用的市場活動。
  • stm32的定時器輸入捕獲與輸出比較
    明確一點對比AD的構造,stm32有3個AD,每個AD有很多通道,使用哪個通道就配置成哪個通道,這裡定時器也如此,有很多定時器TIMx,每個定時器有很多CHx(通道),可以配置為輸入捕捉-------測量頻率用,也可以配置為輸出比較----
  • stm32_timer基本定時器配置及實現燈閃爍
    STM32中一共有11個定時器,其中2個高級控制定時器,4個普通定時器和2個基本定時器,以及2個看門狗定時器和1個系統嘀嗒定時器。TIM1和TIM8是能夠產生3對PWM互補輸出的高級登時其,常用於三相電機的驅動,時鐘由APB2的輸出產生;TIM2-TIM5是普通定時器;TIM6和TIM7是基本定時器,其時鐘由APB1輸出產生;本文引用地址:http://www.eepw.com.cn/article/201611/317027.htm本實驗要實現的功能是:用普通定時器TIM2每一秒發生一次更新事件
  • stm32開發板例程講解之一:使用IAR 5.3建立工程
    本文將講述任何在IAR上建立一個project,並開始自己學習stm32的第一個實驗。實驗所需:安富萊stm32F103ZE開發板一塊,J-Link V8仿真器 1個,安裝iar embedded workbench 5.3,安裝JLinkARM_V420a,下載STM32F10x_StdPeriph_Lib_V3.3.0,安富萊開發板board文件。
  • 如何利用STM32CubeMX來自動生成STM32代碼
    」,這個 3.5 版本的固件庫到現在為止還是開發 STM32F1 系列單片機的首選。實際上,HAL 庫和標準庫本質上是一樣的,都是提供底層硬體操作 API,而且在使用上也是大同小異。有過標準庫基礎的同學對 HAL 庫的使用也很容易入手。個人認為 ST 官方之所以這幾年大力推廣 HAL 庫,是因為 HAL 的結構更加容易整合 STM32Cube,而 STM32CubeMX 是 ST 這幾年極力推薦的程序生成開發工具。
  • stm32定時器時間計算
    2^8=256us   由此我們知道對於一個定時器而言要做到精確定時需要關注2個內容   1、分頻器(分頻比)   2、定時計數器的值   stm32定時器時間計算   系統時鐘是72Mhz,TIM1 是由PCLK2 (72MHz)得到,TIM2-7是由 PCLK1 得到   關鍵是設定 時鐘預分頻數,自動重裝載寄存器周期的值   /*每1秒發生一次更新事件(進入中斷服務程序)。
  • avr單片機和stm32區別與優缺點分析
    摘要:avr單片機和stm32單片機是目前使用較廣泛的單片機,那麼avr單片機和stm32單片機有什麼區別呢?有什麼優劣勢呢?的專用寄存器集中在00~3F地址區間,無需像pic那樣得先進行選存儲體的過程,使用起來比pic方便。
  • keil5.24創建uCOSIII工程實現stm32實時作業系統(環境配置)
    首先,安裝KEIL5,簡單 不作描述其次,下載 PACK 簡單不作描述(根據具體的STM32期間選型相應的DFP文件)下載需要的middle下載需要的ucosiii 假設你用MCU晶片是stm32f10x,就點擊pack install 左邊選擇器件stm32f1系列,右邊把你要用的OS,arm基本庫,stm32f10x_DFP就是