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