a片在线观看免费看视频_欧美婬片在线a_同性男男无遮挡无码视频_久久99狠狠色精品一区_《性妲己》电影在线观看_久久久99婷婷久久久久久_亚洲精品久久久久58_激情在线成人福利小电影_色婷婷久久综合五月激情网

0 賣盤信息
BOM詢價
您現在的位置: 首頁 > 電子資訊 >基礎知識 > stm32f103rct6pwm引腳定義表

stm32f103rct6pwm引腳定義表

來源:
2025-05-21
類別:基礎知識
eye 17
文章創建人 拍明芯城

STM32F103RCT6 PWM引腳定義表及詳細功能解析

STM32F103RCT6是意法半導體(ST)推出的一款基于ARM Cortex-M3內核的32位微控制器,采用LQFP64封裝,擁有64個引腳,其中大部分引腳支持復用功能,包括PWM(脈沖寬度調制)輸出。PWM功能廣泛應用于電機控制、LED調光、舵機驅動等領域,是嵌入式系統開發中不可或缺的功能模塊。本文將詳細解析STM32F103RCT6的PWM引腳定義、功能配置及使用方法,并結合實際案例說明其應用場景。

image.png

一、STM32F103RCT6 PWM功能概述

STM32F103RCT6內置了多個定時器,包括高級定時器(TIM1、TIM8)、通用定時器(TIM2~TIM5)和基本定時器(TIM6、TIM7)。其中,高級定時器和通用定時器均支持PWM輸出功能,具體如下:

  • 高級定時器(TIM1、TIM8):支持高級PWM模式(如互補輸出、死區時間控制),適用于電機驅動等高精度應用。

  • 通用定時器(TIM2~TIM5):支持標準PWM模式,適用于LED調光、舵機控制等常規應用。

PWM輸出的核心參數包括:

  1. 預分頻器(PSC):用于降低定時器時鐘頻率。

  2. 自動重裝載值(ARR):決定PWM周期。

  3. 捕獲比較寄存器(CCR):決定PWM占空比。

二、STM32F103RCT6 PWM引腳定義表

以下是STM32F103RCT6中支持PWM輸出的引腳及其復用功能定義:


引腳編號引腳名稱默認功能復用功能(PWM相關)
PA0TIM2_CH1GPIOTIM2通道1(PWM輸出)
PA1TIM2_CH2GPIOTIM2通道2(PWM輸出)
PA2TIM2_CH3GPIOTIM2通道3(PWM輸出)
PA3TIM2_CH4GPIOTIM2通道4(PWM輸出)
PA6TIM3_CH1GPIOTIM3通道1(PWM輸出)
PA7TIM3_CH2GPIOTIM3通道2(PWM輸出)
PB0TIM3_CH3GPIOTIM3通道3(PWM輸出)
PB1TIM3_CH4GPIOTIM3通道4(PWM輸出)
PA8TIM1_CH1GPIOTIM1通道1(高級PWM輸出,支持互補輸出)
PA9TIM1_CH2GPIOTIM1通道2(高級PWM輸出,支持互補輸出)
PA10TIM1_CH3GPIOTIM1通道3(高級PWM輸出,支持互補輸出)
PB13TIM1_CH1NGPIOTIM1通道1互補輸出(需配合TIM1_CH1使用)
PB14TIM1_CH2NGPIOTIM1通道2互補輸出(需配合TIM1_CH2使用)
PB15TIM1_CH3NGPIOTIM1通道3互補輸出(需配合TIM1_CH3使用)
PC6TIM3_CH1GPIOTIM3通道1(PWM輸出,部分開發板可能復用為其他功能)
PC7TIM3_CH2GPIOTIM3通道2(PWM輸出,部分開發板可能復用為其他功能)
PC8TIM3_CH3GPIOTIM3通道3(PWM輸出,部分開發板可能復用為其他功能)
PC9TIM3_CH4GPIOTIM3通道4(PWM輸出,部分開發板可能復用為其他功能)


引腳復用說明

  1. 高級定時器(TIM1)

    • TIM1的通道1~3(PA8~PA10)支持高級PWM模式,可配置互補輸出(如PA8與PB13配對,PA9與PB14配對,PA10與PB15配對),適用于三相無刷電機驅動等場景。

    • 互補輸出需配置死區時間,避免上下橋臂直通。

  2. 通用定時器(TIM2~TIM5)

    • TIM2~TIM5的通道均支持標準PWM模式,適用于LED調光、舵機控制等常規應用。

    • 例如,TIM2的通道1(PA0)可用于驅動SG90舵機,通過調整CCR值實現0°~180°的角度控制。

  3. 引腳驅動能力

    • 部分引腳(如PC13~PC15)驅動能力較弱,僅適用于低負載應用,不適合直接驅動電機或LED。

    • 高負載應用需通過驅動電路(如三極管、MOSFET)增強驅動能力。

三、PWM功能配置步驟

以下是配置STM32F103RCT6 PWM輸出的基本步驟(以TIM2通道1為例):

1. 硬件連接

  • 將PWM輸出引腳(如PA0)連接至負載(如LED、電機驅動模塊)。

  • 確保負載電源與MCU電源共地。

2. 初始化時鐘

使能TIM2和GPIOA的時鐘:


RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

3. 配置GPIO為復用推挽輸出

將PA0配置為TIM2_CH1的復用推挽輸出:


GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOA, &GPIO_InitStructure);

4. 配置TIM2為PWM模式

設置自動重裝載值(ARR)和預分頻器(PSC),計算PWM頻率:


TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;

TIM_TimeBaseStructure.TIM_Period = 899; // ARR值  

TIM_TimeBaseStructure.TIM_Prescaler = 0; // PSC值  

TIM_TimeBaseStructure.TIM_ClockDivision = 0;

TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;

TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);
    • PWM頻率計算公式:f_PWM = 72MHz / ((PSC + 1) * (ARR + 1))

    • 例如,PSC=0,ARR=899時,PWM頻率為80kHz。

5. 配置PWM輸出通道

設置TIM2通道1為PWM模式2,輸出極性為高:


TIM_OCInitTypeDef TIM_OCInitStructure;

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;

TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;

TIM_OCInitStructure.TIM_Pulse = 0; // 初始占空比為0  

TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;

TIM_OC1Init(TIM2, &TIM_OCInitStructure);

6. 使能PWM輸出

開啟主輸出使能(MOE)和ARR預裝載:


TIM_CtrlPWMOutputs(TIM2, ENABLE);

TIM_OC1PreloadConfig(TIM2, TIM_OCPreload_Enable);

TIM_ARRPreloadConfig(TIM2, ENABLE);

TIM_Cmd(TIM2, ENABLE);

7. 動態調整占空比

  • 通過修改CCR值調整占空比:


TIM_SetCompare1(TIM2, pwmval); // pwmval范圍為0~899

四、PWM應用案例

1. 舵機控制

硬件:SG90舵機、STM32F103RCT6開發板。

原理:SG90舵機通過PWM信號控制角度,周期為20ms(50Hz),脈寬范圍為0.5ms~2.5ms(對應0°~180°)。

代碼示例


void Servo_SetAngle(float angle) {

uint16_t pwmval = 500 + (angle / 180.0) * 2000; // 脈寬計算  

TIM_SetCompare1(TIM2, pwmval);

}

2. 電機調速

  • 硬件:BLDC電機、UB510驅動器、STM32F103RCT6開發板。

  • 原理:通過PWM信號控制電機驅動器的SV引腳,占空比范圍為0%~100%,頻率建議為1kHz~20kHz。

  • 代碼示例


void Motor_SetSpeed(uint8_t speed) {

uint16_t pwmval = (speed / 100.0) * 1000; // 占空比計算  

TIM_SetCompare1(TIM2, pwmval);

}

3. LED調光

  • 硬件:LED、限流電阻、STM32F103RCT6開發板。

  • 原理:通過PWM信號控制LED亮度,占空比越高,LED越亮。

  • 代碼示例


void LED_SetBrightness(uint8_t brightness) {

uint16_t pwmval = (brightness / 100.0) * 899; // 占空比計算  

TIM_SetCompare1(TIM2, pwmval);

}

五、注意事項

  1. 引腳沖突:避免同時啟用同一引腳的不同功能(如USART與PWM)。

  2. 時鐘配置:確保APB1/APB2時鐘已正確配置,否則PWM頻率可能異常。

  3. 驅動能力:高負載應用需通過驅動電路增強引腳驅動能力。

  4. 調試工具:使用示波器或邏輯分析儀監測PWM信號,確保波形正確。

六、總結

STM32F103RCT6的PWM功能通過多個定時器通道實現,支持標準PWM和高級PWM模式,適用于電機控制、LED調光、舵機驅動等多種場景。通過合理配置引腳復用、定時器參數和輸出模式,開發者可以輕松實現高精度的PWM信號輸出。本文詳細介紹了PWM引腳定義、功能配置及實際應用案例,為嵌入式系統開發提供了全面的參考。

責任編輯:David

【免責聲明】

1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。

2、本文的引用僅供讀者交流學習使用,不涉及商業目的。

3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。

4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。

拍明芯城擁有對此聲明的最終解釋權。

標簽: stm32f103rct6pwm

相關資訊

資訊推薦
云母電容公司_云母電容生產廠商

云母電容公司_云母電容生產廠商

開關三極管13007的規格參數、引腳圖、開關電源電路圖?三極管13007可以用什么型號替代?

開關三極管13007的規格參數、引腳圖、開關電源電路圖?三極管13007可以用什么型號替代?

74ls74中文資料匯總(74ls74引腳圖及功能_內部結構及應用電路)

74ls74中文資料匯總(74ls74引腳圖及功能_內部結構及應用電路)

芯片lm2596s開關電壓調節器的中文資料_引腳圖及功能_內部結構及原理圖_電路圖及封裝

芯片lm2596s開關電壓調節器的中文資料_引腳圖及功能_內部結構及原理圖_電路圖及封裝

芯片UA741運算放大器的資料及參數_引腳圖及功能_電路原理圖?ua741運算放大器的替代型號有哪些?

芯片UA741運算放大器的資料及參數_引腳圖及功能_電路原理圖?ua741運算放大器的替代型號有哪些?

28nm光刻機卡住“02專項”——對于督工部分觀點的批判(睡前消息353期)

28nm光刻機卡住“02專項”——對于督工部分觀點的批判(睡前消息353期)

拍明芯城微信圖標

各大手機應用商城搜索“拍明芯城”

下載客戶端,隨時隨地買賣元器件!

拍明芯城公眾號
拍明芯城抖音
拍明芯城b站
拍明芯城頭條
拍明芯城微博
拍明芯城視頻號
拍明
廣告
恒捷廣告
廣告
深亞廣告
廣告
原廠直供
廣告