91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

STM32呼吸燈中PWM的配置與應(yīng)用詳解

ARM與嵌入式 ? 來源:ARM與嵌入式 ? 2024-04-10 14:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文通過呼吸燈實驗,演示STM32中PWM的配置與應(yīng)用。

打開CubeMX軟件,新建工程。

fed82cca-f677-11ee-a297-92fbcf53809c.png

輸入芯片型號。

feeccaf4-f677-11ee-a297-92fbcf53809c.png

根據(jù)封裝選擇列表中的芯片,我的是LQFP144封裝,雙擊此項。

fefabb1e-f677-11ee-a297-92fbcf53809c.png

在Project Manager選項卡中,配置工程名、編譯工具,如下圖所示。

ff0ebd76-f677-11ee-a297-92fbcf53809c.png

Pinout&Configuration選項卡中,配置System的Debug為Serial Wire,否則可能無法下載程序。

ff235a1a-f677-11ee-a297-92fbcf53809c.png

RCC選擇高速外部時鐘。

ff353438-f677-11ee-a297-92fbcf53809c.png

根據(jù)電路原理圖,可知LED7對應(yīng)PC6管腳。

ff4f0e30-f677-11ee-a297-92fbcf53809c.png

ff6094e8-f677-11ee-a297-92fbcf53809c.png

本實驗要讓PC6管腳輸出PWM波形,實現(xiàn)LED7呼吸燈效果。

找到PC6,選中TIM3_CH1。

ff73b780-f677-11ee-a297-92fbcf53809c.png

找到TIM3,通道1配置PWM輸出。

ff9044fe-f677-11ee-a297-92fbcf53809c.png

查找STM32參考手冊時鐘圖,找到TIM3時鐘的位置在APB1上。

ff99af1c-f677-11ee-a297-92fbcf53809c.png

在CubeMX上配置APB1 Timer定時器時鐘頻率為72MHz。

ffafb122-f677-11ee-a297-92fbcf53809c.png

配置TIM3_CH1參數(shù),這里涉及到到計算的問題,具體說一下。

ffd4def2-f677-11ee-a297-92fbcf53809c.png

如上圖PWM產(chǎn)生原理:

定時器從0開始計數(shù)

0-t1時段,輸出低電平

t1-t2時段,輸出高電平

當定時器計數(shù)值達到ARR時溢出,完成一個周期

輸出邏輯電平方波,如上圖紅線所示。

PWM頻率計算公式:

PWM頻率 = 定時器時鐘頻率/(AutoReloadRegister + 1)/(PSC + 1)

簡單推導(dǎo)一下PWM頻率是如何計算的:

一個PWM波周期t2的大小,也就是從0計數(shù)到ARR所需要的時間,每一個定時器時鐘周期計數(shù)一次,總共計數(shù)ARR次之后溢出完成一個周期。

ffeee414-f677-11ee-a297-92fbcf53809c.png

占空比計算公式:CCRx/ARR。

回到CubeMX工程,TIM3參數(shù)設(shè)置如下,

ARR=500-1,PSC=72-1,Pulse=170

占空比大概是Pulse/ARR約等于50%,PWM頻率2000Hz。

0005c4fe-f678-11ee-a297-92fbcf53809c.png

保存,生成代碼。

001ad33a-f678-11ee-a297-92fbcf53809c.png

打開工程。

002b6fc4-f678-11ee-a297-92fbcf53809c.png

在MDK中main.c添加如下代碼。

003aef62-f678-11ee-a297-92fbcf53809c.png

主函數(shù)比較簡單,i值逐漸增大,占空比隨之增大,LED亮度逐漸增加。

當i值為299時,fx值變?yōu)?,從下一個循環(huán)開始i值開始逐漸減小,占空比隨之減小,過程中LED亮度逐漸減弱。

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 原理圖
    +關(guān)注

    關(guān)注

    1353

    文章

    6427

    瀏覽量

    246355
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    116

    文章

    5872

    瀏覽量

    225727
  • STM32
    +關(guān)注

    關(guān)注

    2310

    文章

    11162

    瀏覽量

    373530
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3368

    瀏覽量

    123716
  • 呼吸燈
    +關(guān)注

    關(guān)注

    10

    文章

    117

    瀏覽量

    44107

原文標題:詳解STM32呼吸燈的PWM實現(xiàn)

文章出處:【微信號:ARM與嵌入式,微信公眾號:ARM與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    使用STM32CubeMX輸出PWM,并制作呼吸效果

    概述 本篇文章主要介紹如何使用STM32CubeMX輸出PWM,并制作呼吸效果。 硬件準備 首先需要準備一個開發(fā)板,這里我準備的是NUCLEO-F030R8的開發(fā)板: 選擇芯片型號
    發(fā)表于 09-04 10:38

    基于stm32PWM呼吸工程分享

    (NVIC_PriorityGroup_2);//中斷優(yōu)先級分組分兩組LED_Init();TIM3_CH1_PWM_Init(500,72-1); //頻率是2kHzTIM_SetCompare1(TIM3,i);delay_ms(10); } 全部資料51hei下載地址: 基于
    發(fā)表于 07-02 07:51

    基于stm32PWM呼吸工程分享

    (NVIC_PriorityGroup_2);//中斷優(yōu)先級分組分兩組LED_Init();TIM3_CH1_PWM_Init(500,72-1); //頻率是2kHzTIM_SetCompare1(TIM3,i);delay_ms(10); } 全部資料51hei下載地址: 基于
    發(fā)表于 07-06 07:37

    怎么通過PWM來實現(xiàn)呼吸

    說下我是怎么通過這個PWM來實現(xiàn)呼吸的。硬件的準備就不說了,想實現(xiàn)呼吸的你這個硬件配置肯定是
    發(fā)表于 08-11 06:17

    STM32Cube如何配置PWM呼吸

    STM32Cube如何配置PWM呼吸?
    發(fā)表于 11-23 07:17

    PWM實現(xiàn)呼吸的應(yīng)用

    stm32實現(xiàn)PWM最簡單方法前言一、PWM概念二、PWM應(yīng)用輸出比較功能框圖三、PWM呼吸
    發(fā)表于 01-21 13:18

    請問一下STM32 PWM是如何去實現(xiàn)呼吸設(shè)計的

    STM32 PWM實現(xiàn)呼吸使用STM32F103ZET6 定時器4 CH2通道產(chǎn)生PWM波,在
    發(fā)表于 02-21 07:30

    基于stm32PWM輸出呼吸(包括stm32呼吸代碼)

    本文主要介紹了基于stm32pwm呼吸設(shè)計與實現(xiàn)。使用定時器來控制I/O口輸出PWM波形,從而驅(qū)動LED
    的頭像 發(fā)表于 03-28 16:23 ?7.3w次閱讀
    基于<b class='flag-5'>stm32</b>的<b class='flag-5'>PWM</b>輸出<b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>(包括<b class='flag-5'>stm32</b><b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>代碼)

    STM32實現(xiàn)PWM呼吸的程序合集免費下載

    本文檔的主要內(nèi)容詳細介紹的是STM32實現(xiàn)PWM呼吸的程序合集免費下載。
    發(fā)表于 03-19 08:00 ?16次下載
    <b class='flag-5'>STM32</b>實現(xiàn)<b class='flag-5'>PWM</b><b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>的程序合集免費下載

    STM32_PWM呼吸

    全面屏發(fā)展,因此很多手機取消了呼吸這一功能,取而代之的是息屏顯示)2、什么是PWM?PWM:Pulse Width Modulation,脈沖寬度調(diào)制,是利用微處理器的數(shù)字輸出來對模
    發(fā)表于 11-26 12:21 ?20次下載
    <b class='flag-5'>STM32_PWM</b><b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>

    STM32PWM控制呼吸實驗

    目錄一.PWM簡介PWM生成方法二、PWM控制單色LED—單色呼吸硬件說明代碼分析進行驗證示波器查看波形
    發(fā)表于 12-08 14:51 ?35次下載
    <b class='flag-5'>STM32</b>—<b class='flag-5'>PWM</b>控制<b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>實驗

    STM32 使用PWM實現(xiàn)呼吸

    STM32 PWM實現(xiàn)呼吸使用STM32F103ZET6 定時器4 CH2通道產(chǎn)生PWM波,在
    發(fā)表于 12-24 19:41 ?55次下載
    <b class='flag-5'>STM32</b> 使用<b class='flag-5'>PWM</b>實現(xiàn)<b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>

    stm32使用延時實現(xiàn)呼吸寄存器版

    stm32使用延時實現(xiàn)呼吸(寄存器)該實驗是使用STM32F103C8T6實現(xiàn),使用寄存器編程。呼吸
    發(fā)表于 01-18 10:33 ?0次下載
    <b class='flag-5'>stm32</b>使用延時實現(xiàn)<b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>寄存器版

    STM32G0開發(fā)筆記:用PWM來實現(xiàn)LED呼吸效果

    使用Platformio平臺的libopencm3開發(fā)框架來開發(fā)STM32G0,下面使用PWM來實現(xiàn)LED呼吸效果。
    的頭像 發(fā)表于 01-16 15:15 ?3262次閱讀
    <b class='flag-5'>STM32</b>G0開發(fā)筆記:用<b class='flag-5'>PWM</b>來實現(xiàn)LED<b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>效果

    通過STM32實現(xiàn)PWM呼吸的教程

    顧名思義,就是一個。的亮度的變化,由亮變暗,從暗變亮,有一個漸變,規(guī)律的變化,像是人的呼吸,是呼吸,所以叫
    的頭像 發(fā)表于 07-26 15:20 ?1.7w次閱讀
    通過<b class='flag-5'>STM32</b>實現(xiàn)<b class='flag-5'>PWM</b><b class='flag-5'>呼吸</b><b class='flag-5'>燈</b>的教程