From 82e38738a4d532cc3d56cbf80c1a4093f23cdd6a Mon Sep 17 00:00:00 2001
From: tao_z <tzj0429@163.com>
Date: Wed, 14 Jul 2021 07:01:42 +0800
Subject: [PATCH] 调整时钟64MHz。 RTT任务增加马达开启和关闭功能

---
 USR/SRC/Motor.c |   37 +++++++++++++------------------------
 1 files changed, 13 insertions(+), 24 deletions(-)

diff --git a/USR/SRC/Motor.c b/USR/SRC/Motor.c
index 6e431fb..13f4768 100644
--- a/USR/SRC/Motor.c
+++ b/USR/SRC/Motor.c
@@ -18,10 +18,10 @@
     motor_drive.timeout = 0;
     motor_drive.speed = 0;
     motor_drive.enable_flag = 0;
-    motor_pluse = 2000;
+    motor_pluse = 0;
     memset(motor_drive.speed_group, 0, SPEED_FILTER_NUM);
 
-    hall_enable();
+    // hall_enable();
 };
 /**
   * @brief  ʹ�ܻ���������
@@ -88,14 +88,14 @@
     float f = 0;
 
     /* �����ٶȣ�
-     ���ÿתһȦ����12�����壬(1.0/(48000000.0/6400)Ϊ�����������ڣ�(1.0/(48000000.0/6400) * time)Ϊʱ�䳤��
+     ���ÿתһȦ����12�����壬(1.0/(64000000.0/6400)Ϊ�����������ڣ�(1.0/(64000000.0/6400) * time)Ϊʱ�䳤��
   */
 
     if (time == 0)
         motor_drive.speed_group[count++] = 0;
     else
     {
-        // f = (1.0f / (48000000.0f / SPEED_PRESCALER_COUNT) * time);
+        // f = (1.0f / (64000000.0f / SPEED_PRESCALER_COUNT) * time);
         // f = (1.0f / 12.0f) / (f / 60.0f);
         f = time;
         motor_drive.speed_group[count++] = f;
@@ -212,25 +212,11 @@
     // /* ��ȡ��������������״̬,��Ϊ��������� */
     if (exti_interrupt_flag_get(HALL_A_EXTI | HALL_B_EXTI | HALL_C_EXTI)) // �ж��Ƿ��ɴ����жϲ���
     {
-        // update_motor_speed(step, __HAL_TIM_GET_COMPARE(htim, TIM_CHANNEL_1)); //TODO ����ʱ������ü���ʱ��
-        update_motor_speed(motor_step, 300u * GetSpeedTimerOutcnt() + timer_counter_read(TIMER2));
-        SEGGER_RTT_printf(0, "Hall state is:%d!\n", motor_step);
+        // update_motor_speed(motor_step, 300u * GetSpeedTimerOutcnt() + timer_counter_read(TIMER2));
+        SEGGER_RTT_printf(0, "motor speed is:%d,%d!\n", GetSpeedTimerOutcnt(), timer_counter_read(TIMER2));
+        timer_counter_value_config(TIMER2, 0);
         motor_drive.timeout = 0;
-        //     // exti_interrupt_flag_clear(HALL_A_EXTI | HALL_B_EXTI | HALL_C_EXTI);
     }
-
-    // if (RESET != exti_interrupt_flag_get(EXTI_4))
-    // {
-    //     SEGGER_RTT_printf(0, "HALL_A_EXTI  triggle!\n");
-    // }
-    // else if (RESET != exti_interrupt_flag_get(EXTI_5))
-    // {
-    //     SEGGER_RTT_printf(0, "HALL_C_EXTI  triggle!\n");
-    // }
-    // else if (RESET != exti_interrupt_flag_get(EXTI_15))
-    // {
-    //     SEGGER_RTT_printf(0, "HALL_B_EXTI  triggle!\n");
-    // }
     motor_phasechange();
     // HAL_TIM_GenerateEvent(&htimx_bldcm, TIM_EVENTSOURCE_COM); // ������������¼�����ʱ�Ž�����д��
 }
@@ -400,12 +386,15 @@
   */
 extern void stop_pwm_output(void)
 {
-    timer_channel_output_state_config(TIMER0, TIMER_CH_0, TIMER_CCX_DISABLE);
+    // timer_channel_output_state_config(TIMER0, TIMER_CH_0, TIMER_CCX_DISABLE);
     // timer_channel_complementary_output_state_config(TIMER0, TIMER_CH_0, TIMER_CCXN_DISABLE);
-    timer_channel_output_state_config(TIMER0, TIMER_CH_1, TIMER_CCX_DISABLE);
+    // timer_channel_output_state_config(TIMER0, TIMER_CH_1, TIMER_CCX_DISABLE);
     // timer_channel_complementary_output_state_config(TIMER0, TIMER_CH_1, TIMER_CCXN_DISABLE);
-    timer_channel_output_state_config(TIMER0, TIMER_CH_2, TIMER_CCX_DISABLE);
+    // timer_channel_output_state_config(TIMER0, TIMER_CH_2, TIMER_CCX_DISABLE);
     // timer_channel_complementary_output_state_config(TIMER0, TIMER_CH_2, TIMER_CCXN_DISABLE);
+    SetPwmDuty(MOTOR_OUT_CH_U, 0);
+    SetPwmDuty(MOTOR_OUT_CH_V, 0);
+    SetPwmDuty(MOTOR_OUT_CH_W, 0);
     MOTOR_W_L_DISABLE;
     MOTOR_V_L_DISABLE;
     MOTOR_U_L_DISABLE;

--
Gitblit v1.8.0