色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32F407 基本定時器使用

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2023-07-06 14:32 ? 次閱讀

介紹STM32F407基本定時器的配置方法,分別介紹輪詢方式、中斷方式使用定時器完成定時。

【1】定時器介紹

定時器相關的章節在STM32F4xx參考手冊第14、15、16、17章節。

img

img

img

img

img

【2】基本定時器配置示例

增加一個Timer.c文件,代碼如下

#include "timer.h"
 /*
 函數功能:基本定時器7初始化配置
 函數形參:
 psc  :預分頻系數
 arr  :重載值
 說明:定時器的視頻頻率為84MHZ ,是APB1時鐘頻率的2倍
 */
 void Time7_InitConfig(u16 psc,u16 arr)
 {
   /*1. 開時鐘*/
   RCC- >APB1ENR|=1< 5;    //開啟定時器7的時鐘
   RCC- >APB1RSTR|=1< 5;   //開啟復位時鐘  
   RCC- >APB1RSTR&=~(1< 5);//關閉  
 
   /*2. 配置定時器的核心寄存器*/
   TIM7- >PSC=psc-1;     //預分頻
   /*計數器的時鐘頻率CK_CNT等于fCK_PSC/(PSC[15:0]+1)*/
   TIM7- >ARR=arr;       //重裝載寄存器
   TIM7- >CR1|=1< 0;     //使能計數器
 }
 ?

Main.c文件中代碼如下

#include "stm32f4xx.h" // Device header
 #include "led.h"
 #include "delay.h"
 #include "key.h"
 #include "usart.h"
 #include "sys.h"
 #include "exti.h"
 #include "timer.h"
 ?
 int main(void)
 {
 LED_Init();
 KEY_Init();
 USART1_Init(84,115200);
 KEY_EXTI_Init();
   /*
 1/84000000得到定時器加的1的時間單位us
 1/84000得到定時器加的1的時間單位ms
 1/84得到定時器加的1的時間單位s   =0.0119047619047619
   */
 Time7_InitConfig(84,1000); //定時器7初始化
 /*
     分頻84,最終頻率1HMZ  計數器CNT+1的時間是1us
 */
   while(1)
 {
   if(TIM7- >SR&1< 0)       //判斷時間是否到達
 {
   TIM7- >SR&=~(1< 0);  //清除標志位
 LED0=!LED0;
 LED1=!LED1;
 }
 }
 }
 ?
 ?

【3】基本定時器中斷配置示例

在timer.c文件增加以下代碼

?
 #include "timer.h"
 /*
 函數功能:基本定時器7初始化配置
 函數形參:
 psc  :預分頻系數
 arr  :重載值
 說明:定時器的視頻頻率為84MHZ ,是APB1時鐘頻率的2倍
 */
 void Time7_InitConfig(u16 psc,u16 arr)
 {
   /*1. 開時鐘*/
   RCC- >APB1ENR|=1< 5;    //開啟定時器7的時鐘
   RCC- >APB1RSTR|=1< 5;   //開啟復位時鐘  
   RCC- >APB1RSTR&=~(1< 5);//關閉  
 
   /*2. 配置定時器的核心寄存器*/
 TIM7- >DIER|=1< 0; //開啟中斷
   SetNVICPriorityGrouping(TIM7_IRQn,1,1);  //設置中斷優先級
 TIM7- >PSC=psc-1;     //預分頻
   /*計數器的時鐘頻率CK_CNT等于fCK_PSC/(PSC[15:0]+1)*/
   TIM7- >ARR=arr;       //重裝載寄存器
   TIM7- >CR1|=1< 0;     //使能計數器
 }
 ?
 /*
 函數功能:定時器中斷服務函數
 */
 void TIM7_IRQHandler(void)
 {
 TIM7- >SR=0x0;
     LED0=!LED0;
 LED1=!LED1;
 }
 ?
 ?

Main.c文件代碼如下

#include "stm32f4xx.h" // Device header
 #include "led.h"
 #include "delay.h"
 #include "key.h"
 #include "usart.h"
 #include "sys.h"
 #include "exti.h"
 #include "timer.h"
 ?
 int main(void)
 {
 LED_Init();
 KEY_Init();
 USART1_Init(84,115200);
 KEY_EXTI_Init();
   /*
 1/84000000得到定時器加的1的時間單位us
 1/84000得到定時器加的1的時間單位ms
 1/84得到定時器加的1的時間單位s   =0.0119047619047619
   */
 Time7_InitConfig(84,65000); //定時器7初始化
 
 /*
     分頻84,最終頻率1HMZ  計數器CNT+1的時間是1us
 */
   while(1)
 {
   
 }
 }
 ?
 ?

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 計數器
    +關注

    關注

    32

    文章

    2256

    瀏覽量

    94478
  • 中斷
    +關注

    關注

    5

    文章

    898

    瀏覽量

    41471
  • 定時器
    +關注

    關注

    23

    文章

    3246

    瀏覽量

    114721
  • STM32F407
    +關注

    關注

    15

    文章

    187

    瀏覽量

    29437
收藏 人收藏

    評論

    相關推薦

    STM32F407 滴答定時器

    介紹STM32F407滴答定時器配置方法、使用方式,封裝延時函數得到精確的時間。
    的頭像 發表于 07-06 14:32 ?2326次閱讀
    <b class='flag-5'>STM32F407</b> 滴答<b class='flag-5'>定時器</b>

    STM32F407 基本定時器配置輸出PWM方波

    介紹STM32F407定時器PWM波形輸出配置方式。 通過邏輯分析采集波形數據進行可視化顯示對比。
    的頭像 發表于 07-06 14:33 ?5141次閱讀
    <b class='flag-5'>STM32F407</b> 基本<b class='flag-5'>定時器</b>配置輸出PWM方波

    stm32f407定時器

    stm32f407 定時器 用的APB1 APB2 及 定時器頻率 上午想要用Timer10做相對精確的延時功能,但是用示波器發現實際延時數值總是只有一半,百思不得其解。仔細查閱各處資料結合實際研究后對
    發表于 08-06 07:29

    STM32F407定時器的時鐘頻率分別是多少

    STM32F407定時器有哪些?STM32F407定時器的時鐘頻率分別是多少?
    發表于 10-18 08:02

    stm32f407定時器是如何產生PWM的

    stm32f407有多少定時器呢?stm32f407定時器是如何產生PWM的?
    發表于 10-20 06:09

    STM32F407的高級定時器有哪些呢

    STM32F407的高級定時器有哪些呢?STM32F407的通用定時器有哪些呢?STM32F407的基本
    發表于 10-22 07:36

    如何對STM32f407系統定時器的時鐘進行配置呢

    如何對STM32f407系統定時器的時鐘進行配置呢?怎樣去計算STM32f407系統定時器的時鐘頻率呢?
    發表于 11-24 06:42

    STM32F407模板

    STM32F407模板,感興趣可以看看。
    發表于 07-25 18:52 ?133次下載

    STM32F407 UCOS III實驗

    STM32F407 UCOS III實驗,介紹基于STM32F407的UCOSIII實例,參考下
    發表于 09-22 14:08 ?82次下載

    STM32F407定時器的應用

    STM32F407定時器的應用定時器基礎常識自動重載寄存器(TIMx_ARR)自動重載寄存器是預裝載的。對自動重載寄存器執行寫入或讀取操作時會訪問預裝載寄存 器。預裝載寄存器的內容既可以直接傳送
    發表于 11-29 17:06 ?13次下載
    <b class='flag-5'>STM32F407</b><b class='flag-5'>定時器</b>的應用

    STM32F407引腳資源總結

    STM32F407引腳資源總結定時器 串口 ADC
    發表于 12-27 18:54 ?96次下載
    <b class='flag-5'>STM32F407</b>引腳資源總結

    STM32F407原理圖下載

    STM32F407原理圖下載
    發表于 01-17 13:44 ?422次下載

    STM32F407定時器編碼器模式簡介

    STM32F407定時器編碼器模式
    發表于 03-31 17:14 ?8655次閱讀
    <b class='flag-5'>STM32F407</b><b class='flag-5'>定時器</b>編碼器模式簡介

    STM32F407入門開發: 配置定時器輸出PWM方波

    STM32F407定時器的 TIM6 和 TIM7 是普通定時器,除此之外,其他的定時器都可以用來產生 PWM 輸出。其中高級定時器 TI
    的頭像 發表于 05-28 13:43 ?1.5w次閱讀
    <b class='flag-5'>STM32F407</b>入門開發: 配置<b class='flag-5'>定時器</b>輸出PWM方波

    stm32f407原理圖

    stm32f407原理圖
    發表于 07-14 16:07 ?207次下載
    主站蜘蛛池模板: 一本大道无码AV天堂欧美| 国内精品久久久久影院亚洲| 国产午夜精品鲁丝片| 久久中文字幕亚洲| 女人高潮时一吸一夹| 一本之道高清在线观看免费| 国产成人免费网站在线观看| 女人张开腿让男人添| 野花视频在线观看免费| 国产日韩欧美三级| 久久亚洲人成国产精品| 亚洲视频一区| 好大太快了快插穿子宫了| 校花在公车上被内射好舒| 白百合在线观看| 欧美大香线蕉线伊人久久| 樱桃视频影院在线播放| 黑人巨大交牲老太| 午夜宅宅伦电影网中文字幕| 国产色婷婷精品人妻蜜桃成熟时| 日韩亚洲欧美中文在线| 国产高清免费观看| 亚洲成色爱我久久| 久久国产av偷拍在线| 猪蜜蜜网站在线观看电视剧| 美女裸露100%奶头视频| BL文库好大粗黑强强肉NP| 全黄H全肉细节文NP| 高清视频在线观看SEYEYE| 亚洲人女同志video| 精品国产麻豆免费人成网站| 一本之道高清www在线观看| 美女扒开腿让男生桶免费看动态图 | 国产福利视频一区二区| 性欧美videosex18嫩| 久久久无码精品亚洲A片猫咪| 60老妇性xxxxhd| 无码国产成人777爽死在线观看| 饥渴的新婚女教师| 俄罗斯aaaaa一级毛片| 亚洲一级电影|