|
|
@@ -19,7 +19,7 @@ DMA0 ch4 -> timer0 update event
|
|
|
|
|
|
static void _init_pwm_timer(void);
|
|
|
static void _pwm_gpio_config(void);
|
|
|
-#if USER_ITMER_BRAKE==0
|
|
|
+#ifndef PWM_BRAKE_GROUP
|
|
|
static void _gpio_brakein_irq_enable(void);
|
|
|
#endif
|
|
|
u16 timer_update_buffer[6] = {0};
|
|
|
@@ -63,16 +63,10 @@ static void _pwm_gpio_config(void)
|
|
|
gpio_init(PWM_W_N_GROUP,PWM_W_N_MODE,GPIO_OSPEED_50MHZ,PWM_W_N_PIN);
|
|
|
|
|
|
/*configure BRAKE IN*/
|
|
|
-#if USER_ITMER_BRAKE==1
|
|
|
-#ifdef GD32_FOC_DEMO
|
|
|
+#ifdef PWM_BRAKE_GROUP
|
|
|
/* TIMER0 BKIN */
|
|
|
- gpio_init(GPIOB, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_12);
|
|
|
-#else
|
|
|
- gpio_init(GPIOA,GPIO_MODE_AF_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_6);
|
|
|
-#endif
|
|
|
-#else
|
|
|
- gpio_init(GPIOB,GPIO_MODE_IN_FLOATING,GPIO_OSPEED_50MHZ,GPIO_PIN_4);//高刹车
|
|
|
- gpio_init(GPIOB,GPIO_MODE_IN_FLOATING,GPIO_OSPEED_50MHZ,GPIO_PIN_5);//低刹车
|
|
|
+ rcu_periph_clock_enable(PWM_BRAKE_RCU);
|
|
|
+ gpio_init(PWM_BRAKE_GROUP, PWM_BRAKE_MODE, GPIO_OSPEED_50MHZ, PWM_BRAKE_PIN);
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@@ -136,13 +130,13 @@ static void _init_pwm_timer(void) {
|
|
|
timer_channel_output_mode_config(timer,TIMER_CH_3,TIMER_OC_MODE_PWM1);
|
|
|
timer_channel_output_shadow_config(timer,TIMER_CH_3,TIMER_OC_SHADOW_ENABLE);
|
|
|
|
|
|
-#if USER_ITMER_BRAKE==1
|
|
|
+#ifdef PWM_BRAKE_GROUP
|
|
|
timer_break_parameter_struct timer_breakpara;
|
|
|
timer_breakpara.runoffstate = TIMER_ROS_STATE_DISABLE;
|
|
|
timer_breakpara.ideloffstate = TIMER_ROS_STATE_DISABLE;
|
|
|
timer_breakpara.protectmode = TIMER_CCHP_PROT_OFF;
|
|
|
timer_breakpara.deadtime = 0;//NS_2_TCLK(TIMER_DT_NS);
|
|
|
- timer_breakpara.breakstate = TIMER_BREAK_DISABLE;
|
|
|
+ timer_breakpara.breakstate = TIMER_BREAK_ENABLE;
|
|
|
timer_breakpara.breakpolarity = TIMER_BREAK_POLARITY_HIGH;
|
|
|
timer_breakpara.outputautostate = TIMER_OUTAUTO_DISABLE;
|
|
|
timer_break_config(timer,&timer_breakpara);
|
|
|
@@ -173,7 +167,7 @@ static void _init_pwm_timer(void) {
|
|
|
|
|
|
|
|
|
|
|
|
-#if USER_ITMER_BRAKE==0
|
|
|
+#ifndef PWM_BRAKE_GROUP
|
|
|
static void _gpio_brakein_irq_enable(void){
|
|
|
#ifndef GD32_FOC_DEMO
|
|
|
gpio_exti_source_select(GPIO_PORT_SOURCE_GPIOB, GPIO_PIN_SOURCE_4);
|