91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

3天內不再提示

STM32CubeMX之定時器PWM輸出

嵌入式技術 ? 來源:嵌入式技術 ? 作者:嵌入式技術 ? 2022-05-31 09:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

脈沖寬度調制模式(PWM)可以產生一個由TIMx_ARR寄存器確定頻率、由TIMx_CCRx寄存器確定占空比的信號
??本示例實現 IO 輸出模式–PWM 波形輸出。 以 LED 驅動為例, 使用定時器高級功能(PWM 模式), 實現呼吸燈效果。

1.硬件接口

??本硬件平臺有3個LED燈分別為LED2、LED3、LED4LED2接PA1,LED2接PB8,LED4接PB9,硬件原理圖如下:

在這里插入圖片描述

根據STM32引腳定義手冊或者STM32CUbeMX軟件我們可得知定時器4的CH1和CH2對應外部引腳PB8和PB9。

在這里插入圖片描述

2 軟件設計

??打開STM32CubeMX工具,配置定時器4,將PB8配置為定時器4通道3(復用推挽輸出),PB9配置為定時器4通道4(復用推挽輸出)。

poYBAGKUlTGAc1sYAAElSouWhz0140.pngpoYBAGKUltuAMEWcAABoD6KovpU624.png#pic_centerpoYBAGKUlWuAeKGkAAHYA-wq1gs266.png

3.參數說明

模式 說明
Input capture direct mode 輸入捕獲直接模式
Input capture indirectmode 輸入捕獲間接模式
Input capture triggered by TRC 輸入捕獲觸發器模式
Output compare no output 輸出比較(凍結模式000 )
Output compare CH3 輸出比較(001)
PWM Generation No output PWM產生無輸出
PWM Generation CH3 PWM輸出到CH3
CH3 Combined channels 聯合通道
xor activation 定時器輸入異或模式
poYBAGKUltuAPC4pAABw31jFoKE208.png#pic_center

4. 代碼生成

pYYBAGKUlfmAUAOiAAO_mg10V2w646.png

PWM模式配置:

在這里插入圖片描述

PB8、PB9引腳配置和PWM模式使能

HAL_TIM_PWM_Start(timHandle,TIM_CHANNEL_3);//初始化通道3
HAL_TIM_PWM_Start(timHandle,TIM_CHANNEL_4);//初始化通道4

引腳模式配置及PWM初始化

pYYBAGKUljKAABDwAAPS43L0PPg238.png

4.呼吸燈主函數示例

while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
		/*實現呼吸燈*/
		if(flag==0)i++;
		else i--;
		if(i>=300)flag=1;
		if(i==0)flag=0;
		HAL_Delay(3);
		htim4.Instance->CCR3=i;//調節占空比
		htim4.Instance->CCR4=i;
  }

5.HAL庫定時器常用函數介紹

HAL庫中定時器基本功能函數源碼均在stm32f1xx_hal_tim.c中,高級功能函數在stm32f1xx_hal_tim_ex.c中,本小節主要介紹幾個常用函數。(以下列舉函數可能需要用戶調用或修改)。

/*硬件層初始化:時鐘、中斷,DMA*/
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim);
/*中斷方式開啟定時器*/
HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim);
/*DMA方式開啟定時器*/
HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length);
/*開啟定時器PWM模式*/
HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel);
/*獲取狀態*/
HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim);
/*中斷方式開啟定時器輸入捕獲功能*/
HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)

6.軟件仿真效果展示

??通過KEIL軟件仿真,查看引腳電平變化,KEIL軟件相關設置:
CPU DLL:SARMCM3.DLL
Dialog DLL:DARMSTM.DLL Parameter:-pSTM32F103C8

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBASVRf6Zi_5rC0,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center

進入仿真模式:

在這里插入圖片描述

查看引腳電平變化波形:

在這里插入圖片描述pYYBAGKUlpuAZh-iAAOSwTacxpY098.png

波形效果:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBASVRf6Zi_5rC0,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center

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

    關注

    116

    文章

    5502

    瀏覽量

    219335
  • STM32
    +關注

    關注

    2293

    文章

    11031

    瀏覽量

    364724
  • 定時器
    +關注

    關注

    23

    文章

    3298

    瀏覽量

    118863
  • 呼吸燈
    +關注

    關注

    10

    文章

    112

    瀏覽量

    43220
  • kell
    +關注

    關注

    0

    文章

    3

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    STM32CubeMx入門教程(3):定時器的使用

    導語“ 使用STM32CubeMx 生成初始化定時器代碼,實現定時器特定定時
    發表于 07-11 15:22 ?5292次閱讀
    <b class='flag-5'>STM32CubeMx</b>入門教程(3):<b class='flag-5'>定時器</b>的使用

    STM32CubeMx入門教程(4):PWM應用

    導語“使用STM32CubeMx配置定時器輸出PWM波,生成初始化代碼。”
    發表于 07-11 15:23 ?3244次閱讀
    <b class='flag-5'>STM32CubeMx</b>入門教程(4):<b class='flag-5'>PWM</b>應用

    基于STM32CUBEMX驅動低壓步進電機驅動STSPIN220(3)----定時器中斷產生指定數量脈沖

    在步進電機控制過程中,為了實現精確的位置和速度控制,經常需要輸出指定數量的脈沖。這就需要使用定時器功能來生成PWM脈沖信號。本文將詳細介紹如何利用STM32CUBEMX配置
    的頭像 發表于 12-01 15:26 ?2527次閱讀
    基于<b class='flag-5'>STM32CUBEMX</b>驅動低壓步進<b class='flag-5'>器</b>電機驅動<b class='flag-5'>器</b>STSPIN220(3)----<b class='flag-5'>定時器</b>中斷產生指定數量脈沖

    Stm32CubeMx基本定時器的概念

    Stm32CubeMx基本定時器基本定時器概念Stm32CubeMx 配置基本配置配置LED燈配置晶振時鐘配置串口時鐘數配置TIM6定時器
    發表于 08-18 08:18

    基于STM32CUBEMX的高級定時器輸出兩路PWM

    STM32CUBEMX配置教程(五)高級定時器輸出兩路PWM波基于STM32H743VI使用STM32C
    發表于 03-02 07:02

    【技術精選】嵌入式STM32原創征文活動精選文章

    網絡協議棧移植步驟與方案STM32CubeMX定時器PWM輸出STM32CubeMx
    發表于 07-27 18:26

    【MCU】基于STM32CubeMX定時器中斷實現LED閃爍

    基于STM32CubeMX定時器中斷實現 LED 閃爍本實驗基于STM32CubeMX實現對STM32開發板的配置,通過定時器中斷實現 LE
    發表于 10-29 11:06 ?20次下載
    【MCU】基于<b class='flag-5'>STM32CubeMX</b><b class='flag-5'>定時器</b>中斷實現LED閃爍

    STM32CUBEMX配置教程(十二)STM32定時器觸發的固定頻率ADC采樣(使用DMA)

    STM32CUBEMX配置教程(十二)STM32定時器觸發的固定頻率ADC采樣(使用DMA)
    發表于 11-24 13:51 ?86次下載
    <b class='flag-5'>STM32CUBEMX</b>配置教程(十二)<b class='flag-5'>STM32</b>的<b class='flag-5'>定時器</b>觸發的固定頻率ADC采樣(使用DMA)

    STM32CUBEMX配置教程(十三)STM32定時器觸發的固定頻率DAC輸出(使用DMA)

    STM32CUBEMX配置教程(十三)STM32定時器觸發的固定頻率DAC輸出(使用DMA)
    發表于 11-24 14:06 ?47次下載
    <b class='flag-5'>STM32CUBEMX</b>配置教程(十三)<b class='flag-5'>STM32</b>的<b class='flag-5'>定時器</b>觸發的固定頻率DAC<b class='flag-5'>輸出</b>(使用DMA)

    STM32CubeMX實戰教程(五)——通用定時器PWM輸出

    前言在上一章《STM32CubeMX實戰教程(四)——基本定時器(還是點燈)》中,已經介紹過基本定時器的功能及用法,在這一章中,我講主要介紹一下通用定時器的相關功能以及配置方法,廢話不
    發表于 11-26 15:36 ?13次下載
    <b class='flag-5'>STM32CubeMX</b>實戰教程(五)——通用<b class='flag-5'>定時器</b>(<b class='flag-5'>PWM</b><b class='flag-5'>輸出</b>)

    STM32CubeMX_定時器中斷_PWM

    文章目錄前言STM32CubeMX新建工程基本定時器配置生成代碼定時器中斷PWM配置工程代碼前言STM32CubeMX_環境搭建_GPIO_
    發表于 12-05 13:51 ?13次下載
    <b class='flag-5'>STM32CubeMX</b>_<b class='flag-5'>定時器</b>中斷_<b class='flag-5'>PWM</b>

    STM32CUbeMX兩路互補pwm波 以及死區時間設置

    STM32CUbeMX兩路互補pwm波 以及死區時間設置STM32CUbeMX的配置keil工程里的代碼實現驗證結果芯片:stm32f103zet
    發表于 12-22 19:40 ?32次下載
    <b class='flag-5'>STM32CUbeMX</b><b class='flag-5'>之</b>兩路互補<b class='flag-5'>pwm</b>波 以及死區時間設置

    STM32CUBEMX(1)--PWM

    本篇文章主要介紹如何使用STM32CubeMX輸出PWM,并制作呼吸燈效果。
    的頭像 發表于 11-14 15:29 ?3110次閱讀
    <b class='flag-5'>STM32CUBEMX</b>(1)--<b class='flag-5'>PWM</b>

    STM32CUBEMX開發GD32F303(12)----輸出PWM及修改PWM頻率與占空比

    本章STM32CUBEMX配置STM32F103,并且在GD32F303中進行開發,同時通過開發板內進行驗證。 本章主要配置定時器輸出PWM
    的頭像 發表于 11-30 14:40 ?4795次閱讀
    <b class='flag-5'>STM32CUBEMX</b>開發GD32F303(12)----<b class='flag-5'>輸出</b><b class='flag-5'>PWM</b>及修改<b class='flag-5'>PWM</b>頻率與占空比

    STM32CUBEMX開發GD32F303(13)----定時器TIM捕獲PWM測量頻率與占空比

    概述 本章STM32CUBEMX配置STM32F103,并且在GD32F303中進行開發,同時通過開發板內進行驗證。 本章STM32CUBEMX配置STM32F103
    的頭像 發表于 12-07 10:15 ?4231次閱讀
    <b class='flag-5'>STM32CUBEMX</b>開發GD32F303(13)----<b class='flag-5'>定時器</b>TIM捕獲<b class='flag-5'>PWM</b>測量頻率與占空比
    主站蜘蛛池模板: 天天视频国产精品 | 日日爽视频 | 国产一区二区在线视频播放 | 色老头久久网 | 亚洲高清免费观看 | a久久| 亚洲精品第三页 | 日本高清免费aaaaa大片视频 | 欧美一级片免费观看 | 日本免费大黄 | 成人青草亚洲国产 | 最好看的2019中文字幕免费高清 | 色女人综合 | 久久精品综合视频 | 6080伦理久久亚洲精品 | 中文字幕亚洲一区二区v@在线 | 在线看片一区 | 中文字幕三级 | 欧美成人免费大片888 | 国产激烈无遮挡免费床戏视频 | 在线天堂中文新版www | 高清国产在线 | 天天干天天射天天插 | 男人都懂得网址 | 五月激情啪啪网 | 河南毛片 | 男女无遮挡一进一出性视频 | 夜夜爽夜夜爽 | 在线免费看片a | 天堂网最新版www中文 | 午夜dy888理论 | 特极毛片| 国产精品嫩草影院一二三区入口 | 性 色 黄 一级 | 天天做天天爱天天射 | 黄网站色视频免费看无下截 | 毛片在线播放网址 | 国产亚洲精品久久久久久久软件 | 免费一级欧美片片线观看 | 久久精品国产2020观看福利色 | 国产精品欧美精品国产主播 |