精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

STM32CUBEMX(1)--PWM

嵌入式單片機MCU開發 ? 來源:嵌入式單片機MCU開發 ? 作者:嵌入式單片機MCU開 ? 2022-11-14 15:29 ? 次閱讀

概述

本篇文章主要介紹如何使用STM32CubeMX輸出PWM,并制作呼吸燈效果。

硬件準備

首先需要準備一個開發板,這里我準備的是NUCLEO-F030R8的開發板:

在這里插入圖片描述

在這里插入圖片描述

選擇芯片型號

在這里插入圖片描述

在這里插入圖片描述

配置時鐘

HSE與LSE分別為外部高速時鐘和低速時鐘,在本文中使用內置的時鐘源,故都選擇Disable選項,如下所示:

在這里插入圖片描述

在這里插入圖片描述

配置時鐘樹

STM32F0的最高主頻到48M,所以配置48即可:

在這里插入圖片描述

在這里插入圖片描述

PWM配置

本次實驗使用的是TIM3的通道1來輸出PWM波,選擇時鐘,并且選擇通道1的PWM模式。

在這里插入圖片描述

在這里插入圖片描述

配置PWM波的參數

在這里插入圖片描述

在這里插入圖片描述

PWM頻率計算如下所示

在這里插入圖片描述

在這里插入圖片描述

在上面配置TIM3參數,預分頻系數設置為48-1, 自動重載值設置為1000-1,那么PWM頻率為48,000,000/((48-1+1)*(1000-1+1))=1000Hz,即1KHz。

注意載芯片示意圖上會看到下圖PA6就是TIM3的通道1PWM波輸出口。

在這里插入圖片描述

在這里插入圖片描述

生成工程設置

注意在生產工程設置中不能出現中文,不然會報錯。

在這里插入圖片描述

在這里插入圖片描述

代碼生成設置

最后設置生成獨立的初始化文件:

在這里插入圖片描述

在這里插入圖片描述

生成代碼

在這里插入圖片描述

在這里插入圖片描述

配置keil

在這里插入圖片描述

在這里插入圖片描述

代碼

在main.c中,先定義兩個變量存儲設置的占空比和模式

/* USER CODE BEGIN 1 */
uint16_t pwm_i =0;//占空比
uint16_t pwm_mode =0;//呼吸燈模式,1為增加,2為減少
  /* USER CODE END 1 */

使能TIM3的PWM Channel1 輸出。

/* USER CODE BEGIN 2 */
    //使能TIM3的PWM Channel1輸出。
    HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_1);
  /* USER CODE END 2 */

然后在while(1)中改變pwm_i的值,來實現呼吸效果。

/* USER CODE BEGIN WHILE */
  while (1)
  {
    if(pwm_mode)
    {
        __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_1, pwm_i--);
        if(pwm_i==0)
        pwm_mode=0;
    }
    else
    {
        __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_1, pwm_i++);
        if(pwm_i==1000)
        pwm_mode=1;
    }
    HAL_Delay(1);       

    /* USER CODE END WHILE */
    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */

演示效果

在這里插入圖片描述

在這里插入圖片描述

審核編輯:湯梓紅

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

    關注

    6032

    文章

    44521

    瀏覽量

    633087
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5147

    瀏覽量

    213413
  • stm32cubemx
    +關注

    關注

    5

    文章

    280

    瀏覽量

    14758
收藏 人收藏

    評論

    相關推薦

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

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

    stm32cubemx教程

    stm32cubemx教程,需要學習的看看,免積分
    發表于 11-02 10:16 ?0次下載

    關于STM32CubeMX重大升級

    STM32CubeMX重大升級
    的頭像 發表于 03-04 14:05 ?3703次閱讀

    淺談stm32cubemx安裝教程

    STM32CubeMX介紹、下載與安裝
    的頭像 發表于 03-25 10:57 ?1.8w次閱讀
    淺談<b class='flag-5'>stm32cubemx</b>安裝教程

    STM32CubeMX學習筆記(一)---LED與蜂鳴器

    STM32CubeMX學習筆記(一)—點亮LED這里寫目錄標題STM32CubeMX學習筆記(一)---點亮LED一、開發板二、STM32CubeMX工程創建1、打開
    發表于 12-05 13:21 ?19次下載
    <b class='flag-5'>STM32CubeMX</b>學習筆記(一)---LED與蜂鳴器

    stm32CubeMX的安裝和點亮流水燈

    LED燈1.題目介紹2.CubeMX介紹3.CubeMX安裝固件庫4.CubeMX新建工程本文是基于stm32CubeMX軟件點亮LED流水
    發表于 12-05 14:06 ?13次下載
    <b class='flag-5'>stm32CubeMX</b>的安裝和點亮流水燈

    STM32CubeMX Nucleo F767ZI 教程(2)

    STM32CubeMX Nucleo F767ZI 教程(2)STM32CubeMX Nucleo F767ZI 教程(1)STM32CubeMX Nucleo F767ZI 教程(2
    發表于 12-06 10:06 ?21次下載
    <b class='flag-5'>STM32CubeMX</b> Nucleo F767ZI 教程(2)

    STM32學習之STM32cubeMX軟件安裝與使用(附STM32cubeMX5.2.1下載地址)

    STM32學習之STM32cubeMX軟件安裝與使用(附STM32cubeMX5.2.1下載地址)
    發表于 12-07 11:51 ?28次下載
    <b class='flag-5'>STM32</b>學習之<b class='flag-5'>STM32cubeMX</b>軟件安裝與使用(附<b class='flag-5'>STM32cubeMX</b>5.2.1下載地址)

    STM32CUBEMX配置教程(一)基礎配置

    STM32CUBEMX配置教程合集(一)
    發表于 12-14 18:41 ?17次下載
    <b class='flag-5'>STM32CUBEMX</b>配置教程(一)基礎配置

    STM32CubeMX 窗口及工具介紹

    STM32CubeMX 系列教程之 STM32CubeMX 窗口及 STM32PackCreator 工具介紹,內附詳細圖文介紹。
    發表于 12-14 18:51 ?26次下載
    <b class='flag-5'>STM32CubeMX</b> 窗口及工具介紹

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

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

    stm32cubeMX結合matlab使用

    文章目錄前言一、軟件的安裝二、使用步驟1.先配置stm32cubeMX(我這里做的是一個串口通訊)2.matlab的配置3.工程生成總結前言今天帶大家把Matlab和STM32結合起來,強強聯合
    發表于 12-24 18:58 ?12次下載
    <b class='flag-5'>stm32cubeMX</b>結合matlab使用

    利用stm32cubemx創建stm32工程

    下面我將為大家分享一下我利用stm32cubemx這款工具開發stm32首先介紹一下STM32的分類:我選擇的這款是STM32F103VE,首先打開
    發表于 12-24 19:14 ?31次下載
    利用<b class='flag-5'>stm32cubemx</b>創建<b class='flag-5'>stm32</b>工程

    STM32入門1——STM32CubeMX使用說明

    STM32入門1——STM32相關資源介紹常用網站CubeMx使用介紹常用網站Keil5 : http://www.keil.com/.pack包下載.IAR : https
    發表于 12-27 18:38 ?13次下載
    <b class='flag-5'>STM32</b>入門<b class='flag-5'>1</b>——<b class='flag-5'>STM32CubeMX</b>使用說明

    STM8CubeMXSTM32CubeMX功能一樣嗎?

    STM8CubeMXSTM32CubeMX功能一樣嗎?
    的頭像 發表于 10-31 16:59 ?1751次閱讀
    STM8<b class='flag-5'>CubeMX</b>和<b class='flag-5'>STM32CubeMX</b>功能一樣嗎?