From 5a477078cf3bc0d9b3a76ec55740c8141540b788 Mon Sep 17 00:00:00 2001 From: xqq27 <834160466@qq.com> Date: Wed, 7 May 2025 09:31:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A0pwm=E8=BE=93=E5=87=BA=E7=9A=84?= =?UTF-8?q?=E5=8E=9F=E5=9B=A0=E6=98=AFPA2=E5=90=8C=E6=97=B6=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E4=BA=86TM2=5FCH3=E5=92=8CUSART2=EF=BC=8C=E7=8E=B0?= =?UTF-8?q?=E5=9C=A8=E4=BD=BF=E7=94=A8PA1=EF=BC=8CTIM2=5FCH2=E4=BD=9C?= =?UTF-8?q?=E4=B8=BA=E7=94=B5=E6=9C=BA=E7=9A=84PWM=EF=BC=8C=E5=90=8E?= =?UTF-8?q?=E6=9C=9F=E7=94=BB=E6=9D=BF=E5=AD=90=E9=9C=80=E8=A6=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=AD=A4=E5=A4=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Code/bsp/inc/bsp_motor.h | 2 +- Code/bsp/src/bsp_motor.c | 21 +- Code/bsp/src/bsp_usart.c | 34 +- Code/middleware/Motor/mw_motor.c | 12 +- Project/Output/TianyunV1.hex | 638 ++++++++++++++--------------- Project/Output/TianyunV1.map | 662 +++++++++++++++---------------- 6 files changed, 679 insertions(+), 690 deletions(-) diff --git a/Code/bsp/inc/bsp_motor.h b/Code/bsp/inc/bsp_motor.h index 8ba7620..9adf93d 100644 --- a/Code/bsp/inc/bsp_motor.h +++ b/Code/bsp/inc/bsp_motor.h @@ -17,6 +17,6 @@ void bsp_BIN1_OFF(void); void bsp_BIN2_ON(void); void bsp_BIN2_OFF(void); -void PWM_SetCompare3(uint16_t Compare); +void bsp_changeMotorSpeed(uint16_t Compare); #endif diff --git a/Code/bsp/src/bsp_motor.c b/Code/bsp/src/bsp_motor.c index 5f66547..1b01189 100644 --- a/Code/bsp/src/bsp_motor.c +++ b/Code/bsp/src/bsp_motor.c @@ -25,7 +25,7 @@ #define TIM_MOTOR_PERIPH_RCC RCC_APB1Periph_TIM2 #define TIM_MOTOR_PWN_GPIO_RCC RCC_APB2Periph_GPIOA #define TIM_MOTOR_PWN_GPIO_PORT GPIOA -#define TIM_MOTOR_PWN_GPIO_PIN GPIO_Pin_2 +#define TIM_MOTOR_PWN_GPIO_PIN GPIO_Pin_1 /************************************************************************************* * @brief 对外输出至电机驱动板IN接口的GPIO初始化 @@ -79,7 +79,7 @@ void bsp_InitGPIO_MotorOut(void) /* 1. 使能TIM时钟 */ RCC_APB1PeriphClockCmd(TIM_MOTOR_PERIPH_RCC, ENABLE); /* 2. 使能对应的GPIO引脚 */ - GPIO_Init(TIM_MOTOR_PWN_GPIO_PORT, &GPIO_InitStructure); //初始化 GPIOA.2 + GPIO_Init(TIM_MOTOR_PWN_GPIO_PORT, &GPIO_InitStructure); //初始化 RCC_APB2PeriphClockCmd(TIM_MOTOR_PWN_GPIO_RCC, ENABLE); //使能 PA 端口时钟 GPIO_InitStructure.GPIO_Pin = TIM_MOTOR_PWN_GPIO_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; @@ -96,11 +96,12 @@ void bsp_InitGPIO_MotorOut(void) TIM_TimeBaseInit(TIM_MOTOR, &TIM_TimeBaseStructure); /* 5. 输出比较 */ TIM_OCStructInit(&TIM_OCInitStructure); - TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; - TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; - TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; - TIM_OCInitStructure.TIM_Pulse = 0; //CCR - TIM_OC3Init(TIM_MOTOR, &TIM_OCInitStructure); + TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; // PWM模式1(CNT