日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

STM32F4_TIM輸出PWM波形 (可調(diào)頻率、占空比)

發(fā)布者:自由思想最新更新時間:2024-09-19 來源: elecfans關鍵字:STM32F4  TIM輸出  PWM波形  可調(diào)頻率  占空比 手機看文章 掃描二維碼
隨時隨地手機看文章

Ⅰ、概述

上一篇文章關于STM32基本的計數(shù)原理明白之后,該文章是在其基礎上進行拓展,講述關于STM32比較輸出的功能,以輸出PWM波形為實例來講述。


提供實例工程中比較實用的函數(shù):只需要調(diào)用該函數(shù),參數(shù)為頻率和占空比

void TIM2_CH2_PWM(uint32_tFreq, uint16_tDutycycle);

先看一下實例中1KHz、20%占空比波形圖 TIM2_CH2_PWM(1000, 20);


關于本文的更多詳情請往下看。

Ⅱ、實例工程下載

筆者針對于初學者提供的例程都是去掉了許多不必要的功能,精簡了官方的代碼,對初學者一看就明白,以簡單明了的工程供大家學習。

筆者提供的實例工程都是在板子上經(jīng)過多次測試并沒有問題才上傳至360云盤,歡迎下載測試、參照學習。

提供下載的軟件工程是STM32F417的,但F4其他型號也適用(適用F4其他型號:關注微信,回復“修改型號”)。

STM32F4_TIM輸出PWM波形(可調(diào)頻率、占空比)實例:

https://yunpan.cn/cBYTWTgSmhbfe 訪問密碼 0025

STM32F4資料:

https://yunpan.cn/cR2pxqF5x2d9c 訪問密碼 53e7

Ⅲ、原理描述


上一篇文章講述的就是上圖中“計數(shù)”紅色部分,也就是開始到結束的時間,該文章是講述在這個計數(shù)的中間加一個值(比較值),當計數(shù)到這個比較值的時候就對輸出的引腳進行反向,直到計滿(一個周期)。循環(huán)下去。

通用TIM框圖:


上面兩圖截取“STM32F4x5、x7參考手冊”建議下載手冊參看。

我上面說的“比較值”就是TIM框圖中比較部分的“Capture/Comparex register”比較寄存器,這個值就會決定輸出引腳的電平。

Ⅳ、源代碼分析

筆者以F4標準外設庫(同時也建議初學者使用官方的標準外設庫)為建立的工程,主要以庫的方式來講述。

1.RCC時鐘


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

重點注意:

A.外設RCC時鐘的配置要在其外設初始化的前面;

B.匹配對應時鐘。

比如:RCC_APB2外設不要配置在RCC_APB1時鐘里面

【如:RCC_APB1PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);這樣能編譯通過,但這是錯誤的代碼】

2.TIM比較輸出配置


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

TIM2時基單元配置是上一篇文章相關的內(nèi)容,是及時的配置,在該文中也就是對一個周期的配置。

TIM2通道2:PWM1模式配置是對占空比的配置。

tim2_period =TIM2_COUNTER_CLOCK/Freq - 1;

tim2_pulse = (tim2_period + 1)*Dutycycle / 100;

函數(shù)開始是對周期和占空比的一個換算公式,也比較簡單。

決定輸出頻率和占空比主要由這三個參數(shù)(TIM2_PRESCALER_VALUE、tim2_period、tim2_pulse)決定的。

以今天工程輸出1KHz,20%來舉例說明:

TIM2_PRESCALER_VALUE = 168M/2 / 42M - 1 = 1 (也就是2分頻)

tim2_period = 42000 - 1

tim2_pulse = 8400

頻率1KHz = 42M/ 4200

占空比20% = 8400/42000

Ⅴ、說明

關于筆者提供的軟件工程實例,可關注微信,在會話框回復“關于工程”,有關于工程結構描述、型號修改等講述。


關鍵字:STM32F4  TIM輸出  PWM波形  可調(diào)頻率  占空比 引用地址:STM32F4_TIM輸出PWM波形 (可調(diào)頻率、占空比)

上一篇:STM32F10x_ 模擬I2C讀寫EEPROM
下一篇:Linux下開發(fā)STM32 使用gcc-arm-none-eabi工具鏈編譯生成bin、hex文件

推薦閱讀最新更新時間:2025-07-06 13:05

Stm32F4x采用外部觸發(fā)法測矩形波頻率占空比
一、 方案總體介紹 本方案未采用外部中斷測頻和定時器輸入捕獲測占空比,原因是在測高頻時,中斷頻率過高,CPU頻繁響應中斷,導致測量精度嚴重下降。故采用以下方案: 頻率測量方案:用定時器TIM3定時1秒,定時器TIM2設置為外部時鐘輸入(將要測量的矩形波作為時鐘輸入)。1秒后,取出TIM2計數(shù)器的值,即是所要測量的矩形波的頻率。由于存在系統(tǒng)誤差,進行多次測量,用Matlab擬合曲線,進行線性補償。 占空比測量方案:為節(jié)省外設資源,對定時器TIM2進行分時復用,即在測頻完成后,更改定時器設置,再進行測量占空比。用定時器TIM3定時1秒,定時器TIM2設置從模式、門控模式(高電平定時器時鐘使能),觸發(fā)源為外部觸發(fā)。1秒后,取出TIM2計
[單片機]
<font color='red'>Stm32F4</font>x采用外部觸發(fā)法測矩形波<font color='red'>頻率</font>和<font color='red'>占空比</font>
單片機pwm頻率和周期可調(diào)
//------------------------------------------------------------------------------------ //程序功能簡介:本程序產(chǎn)生15HZ~~~50KHZ的方波,并且實現(xiàn)頻率和脈寬的獨立調(diào)制,即可 //在改變頻率的同時不改變脈寬,再改變脈寬的同時不改變頻率;同時設置 //兩個調(diào)節(jié)步長------在KEY鍵按下時,粗調(diào),沒有按下時,細調(diào); //程序思路: 本程序用到兩個定時器------定時器0和定時器1,其中定時器0工作在定時方式下, //決定方波的頻率;定時器1,同樣工作在定時方式下,用于設定脈寬; //---------------------------
[單片機]
設計脈寬占空比50%,25%可調(diào)的脈沖發(fā)生器
單片機實驗設計:要求使用8951系列單片機,設計脈寬占空比50%,25%可調(diào)的脈沖發(fā)生器,周期2秒。 P1.1輸出PWM。 P3.3接開關,低電平時占空比50%、高電平時占空比25%。 問題補充:晶振是6MHz。 ;================================================= 最佳答案: ;下列程序,經(jīng)過編譯、仿真,符合要求。 ;------------------------------------- ORG 0000H JMP START ORG 000BH JMP T0_INT ;------------------------------------- START:
[單片機]
LED亮度線性變化難搞?PWM占空比幫你忙
占空比 是通電時間和通電周期的比值,常用于調(diào)整較為精細的參數(shù)。比較典型的應用就是對LED照明設備亮度的調(diào)節(jié)。本篇文章就將為大家介紹如何通過調(diào)節(jié)PWM的占空比,來確保LED的亮度是線性變化的。 首先需要明確的是,LED驅(qū)動是恒流的,而PWM所作的僅僅是修改恒流電流與斷流的時間比,所以占空比與光通量的輸出是線性關系。作為一個燈具,其輸出光通量隨時間線性變化,但是人眼感受的卻不是線性的,表現(xiàn)有,在燈光微亮區(qū),很小的光通量改變也讓人眼感到光通量變化很大,而在光通量比較大的區(qū)域,很大的光通量跳躍,人眼感覺到的光通量變化不大。 在這一套組圖中,所有的刻度都是均勻分布的。圖1是實際的占空比與光通量的關系,為線性;它對應的人眼的感受如圖2所
[電源管理]
LED亮度線性變化難搞?<font color='red'>PWM</font><font color='red'>占空比</font>幫你忙
STM32F407 基本定時器使用
介紹STM32F407基本定時器的配置方法,分別介紹輪詢方式、中斷方式使用定時器完成定時。 【1】定時器介紹 定時器相關的章節(jié)在STM32F4xx參考手冊第14、15、16、17章節(jié)。 【2】基本定時器配置示例 增加一個Timer.c文件,代碼如下 #include timer.h /* 函數(shù)功能:基本定時器7初始化配置 函數(shù)形參: psc :預分頻系數(shù) arr :重載值 說明:定時器的視頻頻率為84MHZ ,是APB1時鐘頻率的2倍 */ void Time7_InitConfig(u16 psc,u16 arr) { /*1. 開時鐘*/ RCC- APB1ENR|=1 5;
[單片機]
<font color='red'>STM32F4</font>07 基本定時器使用
從5方面描述STM32F407+ESP8266連接機智云過程
一、硬件組成如下圖所示: 硬件全家福: STM32F407ZGT6+ESP8266 二、下載通用APP DEMO: 1.在應用商店,搜索“機智云”APP。 通用APP Demo 又稱“機智云”APP 2.安裝、注冊、登陸后如下圖所示: 三、調(diào)試過程詳解: 創(chuàng)建數(shù)據(jù)點 生成MCU工程 下載MCU工程并根據(jù)開發(fā)板原理圖修改工程,修改的地方如程序中紅色加注釋的部分 main.c 中加入紅色標出的GPIO初始化代碼 static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct; /* GPIO Ports Clock Enable */ __HAL_RCC_GP
[單片機]
從5方面描述<font color='red'>STM32F4</font>07+ESP8266連接機智云過程
輕松搞懂STM32F4之DMA
DMA的作用以及DMA與CPU干擾問題 DMA(Direct memory access):直接存儲器存儲。 目前網(wǎng)上對于DMA有兩種說法,一種是在DMA傳輸時,CPU可以正常工作,一種說法是不可以,這兩種說法其實有對也有錯,經(jīng)過我的大量查詢后,終于得出了一個靠譜的答案。那么想弄清楚這點,需要先了解總線與時鐘的關系(先湊合看,回頭寫個總線架構專講) 時鐘:計算機的最小時間單位,用于同步控制電路,計算機中每個動作所用時都是以時鐘周期為單位的,多個時鐘周期或一個時鐘周期等于一個機械周期,多個機械周期等于一個指令周期(寫多個是因為不同芯片上他的不同周期的比值不同),指令周期執(zhí)行指令集中的一條指令所需要的時間。 總線:計算
[單片機]
輕松搞懂<font color='red'>STM32F4</font>之DMA
第42章 STM32F429的LTDC應用之點陣字體和字符編碼(重要)
42.1 初學者重要提示 本章節(jié)講解的GB2312和GBK比較容易理解,而Unicode是全球統(tǒng)一碼,所以涉及到的知識點比較多,也復雜些。 當前Windows系統(tǒng)字符管理已經(jīng)全部采用Unicode字符集,編碼形式是UTF-16 LE (LE表示小端格式)編碼。比如我們通過記事本保存的時候選擇編碼類型Unicode,其實就是選擇的UTF-16 LE。而我們平時所說的中文版Windows系統(tǒng)是指用戶在選擇不支持Unicode的程序中顯示文本時所使用的語言。 區(qū)分清楚什么是字符,字符集。字符(Character)是各種文字和符號的總稱,包括各國家文字、標點符號、圖形符號、數(shù)字等。字符集(Character set)是多個字符的集
[單片機]
第42章 <font color='red'>STM32F4</font>29的LTDC應用之點陣字體和字符編碼(重要)
小廣播
設計資源 培訓 開發(fā)板 精華推薦

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved