From df5669303bd54d7bfd553c7cfad279231d7ece17 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期五, 25 四月 2025 09:33:37 +0800
Subject: [PATCH] 3.6,加入蜂鸣器等逻辑

---
 Core/Src/main.c |   33 +++++++++++++++++++++++++--------
 1 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/Core/Src/main.c b/Core/Src/main.c
index 85c7d6c..925e0d5 100644
--- a/Core/Src/main.c
+++ b/Core/Src/main.c
@@ -174,6 +174,7 @@
 //    nomove_count = 0;
 //    HAL_NVIC_SystemReset();
 }
+uint8_t anjian_flag;
 void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
 {
     if(GPIO_Pin == GPIO_PIN_12)
@@ -216,12 +217,12 @@
 uint8_t beep_state;
 void Beep_On()
 {
-    HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_1);
+    HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_4);
     beep_state=1;  
 }
 void Beep_Off()
 {
-    HAL_TIM_PWM_Stop(&htim3, TIM_CHANNEL_1);
+    HAL_TIM_PWM_Stop(&htim3, TIM_CHANNEL_4);
     beep_state=0;  
 }
 /* USER CODE END 0 */
@@ -307,7 +308,8 @@
   GPS_Close_Init();
 //  HAL_Delay(500);
   bat_percent=Get_Battary();
-
+//Beep_On();
+//  while(1);
 //  HAL_Delay(10000);
 //      Uart_ReConfigBaudRate(UART_ID_4G,115200);
 //    HAL_UART_Transmit(&huart5, str,17,1000);
@@ -542,7 +544,7 @@
 
   /* USER CODE END LPUART1_Init 1 */
   hlpuart1.Instance = LPUART1;
-  hlpuart1.Init.BaudRate = 115200;
+  hlpuart1.Init.BaudRate = 9600;
   hlpuart1.Init.WordLength = UART_WORDLENGTH_8B;
   hlpuart1.Init.StopBits = UART_STOPBITS_1;
   hlpuart1.Init.Parity = UART_PARITY_NONE;
@@ -751,6 +753,7 @@
 
   /* USER CODE END TIM3_Init 0 */
 
+  TIM_ClockConfigTypeDef sClockSourceConfig = {0};
   TIM_MasterConfigTypeDef sMasterConfig = {0};
   TIM_OC_InitTypeDef sConfigOC = {0};
 
@@ -763,6 +766,15 @@
   htim3.Init.Period = 250-1;
   htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
   htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
+  if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
+  {
+    Error_Handler();
+  }
+  sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
+  if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK)
+  {
+    Error_Handler();
+  }
   if (HAL_TIM_PWM_Init(&htim3) != HAL_OK)
   {
     Error_Handler();
@@ -777,11 +789,11 @@
   sConfigOC.Pulse = 125;
   sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
   sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
-  if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_1) != HAL_OK)
+  if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_4) != HAL_OK)
   {
     Error_Handler();
   }
-  if (HAL_TIMEx_RemapConfig(&htim3, TIM3_TI1_GPIO) != HAL_OK)
+  if (HAL_TIMEx_RemapConfig(&htim3, TIM3_TI4_GPIOC9_AF2) != HAL_OK)
   {
     Error_Handler();
   }
@@ -844,8 +856,8 @@
   /*Configure GPIO pin Output Level */
   HAL_GPIO_WritePin(GPIOA, GPIO_PIN_8|GPIO_PIN_12|GPIO_PIN_15, GPIO_PIN_SET);
 
-  /*Configure GPIO pins : PC13 PC9 RADIO_DIO1_Pin */
-  GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_9|RADIO_DIO1_Pin;
+  /*Configure GPIO pins : PC13 RADIO_DIO1_Pin */
+  GPIO_InitStruct.Pin = GPIO_PIN_13|RADIO_DIO1_Pin;
   GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
   GPIO_InitStruct.Pull = GPIO_NOPULL;
   HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
@@ -980,6 +992,7 @@
 uint32_t ledontime;
 uint8_t jiasudutime;
 uint8_t jiasuduflag;
+extern uint16_t beepontime;
 void HAL_LPTIM_CompareMatchCallback(LPTIM_HandleTypeDef *hlptim)
 {
     SystemClock_Config();
@@ -991,6 +1004,10 @@
     work_time++;
     nomove_count++;
     jiasudutime++;
+    if(beepontime>0)
+    {
+    beepontime--;
+    }
     if(jiasudutime>10&&jiasuduflag==0)
     {
     LIS3DH_Data_Init();

--
Gitblit v1.9.3