|
@@ -47,6 +47,8 @@
|
|
|
/* USER CODE END PM */
|
|
/* USER CODE END PM */
|
|
|
|
|
|
|
|
/* Private variables ---------------------------------------------------------*/
|
|
/* Private variables ---------------------------------------------------------*/
|
|
|
|
|
+TIM_HandleTypeDef htim4;
|
|
|
|
|
+
|
|
|
UART_HandleTypeDef huart1;
|
|
UART_HandleTypeDef huart1;
|
|
|
UART_HandleTypeDef huart2;
|
|
UART_HandleTypeDef huart2;
|
|
|
UART_HandleTypeDef huart3;
|
|
UART_HandleTypeDef huart3;
|
|
@@ -76,6 +78,7 @@ static void MX_DMA_Init(void);
|
|
|
static void MX_USART1_UART_Init(void);
|
|
static void MX_USART1_UART_Init(void);
|
|
|
static void MX_USART2_UART_Init(void);
|
|
static void MX_USART2_UART_Init(void);
|
|
|
static void MX_USART3_UART_Init(void);
|
|
static void MX_USART3_UART_Init(void);
|
|
|
|
|
+static void MX_TIM4_Init(void);
|
|
|
/* USER CODE BEGIN PFP */
|
|
/* USER CODE BEGIN PFP */
|
|
|
|
|
|
|
|
/* USER CODE END PFP */
|
|
/* USER CODE END PFP */
|
|
@@ -144,6 +147,7 @@ void Device_Info_Init_Fun() {
|
|
|
*/
|
|
*/
|
|
|
int main(void)
|
|
int main(void)
|
|
|
{
|
|
{
|
|
|
|
|
+
|
|
|
/* USER CODE BEGIN 1 */
|
|
/* USER CODE BEGIN 1 */
|
|
|
|
|
|
|
|
/* USER CODE END 1 */
|
|
/* USER CODE END 1 */
|
|
@@ -170,6 +174,7 @@ int main(void)
|
|
|
MX_USART1_UART_Init();
|
|
MX_USART1_UART_Init();
|
|
|
MX_USART2_UART_Init();
|
|
MX_USART2_UART_Init();
|
|
|
MX_USART3_UART_Init();
|
|
MX_USART3_UART_Init();
|
|
|
|
|
+ MX_TIM4_Init();
|
|
|
/* USER CODE BEGIN 2 */
|
|
/* USER CODE BEGIN 2 */
|
|
|
// 启动 USART2 DMA 接收
|
|
// 启动 USART2 DMA 接收
|
|
|
HAL_UART_Receive_DMA(&huart3, rx_buf, sizeof(rx_buf));
|
|
HAL_UART_Receive_DMA(&huart3, rx_buf, sizeof(rx_buf));
|
|
@@ -216,7 +221,8 @@ int main(void)
|
|
|
// uint16_t randomTime = 0;
|
|
// uint16_t randomTime = 0;
|
|
|
srand(HAL_GetTick());
|
|
srand(HAL_GetTick());
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+ // HAL_TIM_Base_Start(&htim4);
|
|
|
|
|
+ HAL_TIM_Base_Start_IT(&htim4); // 启动计数 + 使能中断
|
|
|
/* USER CODE END 2 */
|
|
/* USER CODE END 2 */
|
|
|
|
|
|
|
|
/* Infinite loop */
|
|
/* Infinite loop */
|
|
@@ -225,6 +231,7 @@ int main(void)
|
|
|
while (1)
|
|
while (1)
|
|
|
{
|
|
{
|
|
|
/* USER CODE END WHILE */
|
|
/* USER CODE END WHILE */
|
|
|
|
|
+
|
|
|
/* USER CODE BEGIN 3 */
|
|
/* USER CODE BEGIN 3 */
|
|
|
|
|
|
|
|
// if (workMode == 0) { // 接收蓝牙数据
|
|
// if (workMode == 0) { // 接收蓝牙数据
|
|
@@ -311,7 +318,6 @@ int main(void)
|
|
|
/* USER CODE END 3 */
|
|
/* USER CODE END 3 */
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* @brief System Clock Configuration
|
|
* @brief System Clock Configuration
|
|
|
* @retval None
|
|
* @retval None
|
|
@@ -351,6 +357,51 @@ void SystemClock_Config(void)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief TIM4 Initialization Function
|
|
|
|
|
+ * @param None
|
|
|
|
|
+ * @retval None
|
|
|
|
|
+ */
|
|
|
|
|
+static void MX_TIM4_Init(void)
|
|
|
|
|
+{
|
|
|
|
|
+
|
|
|
|
|
+ /* USER CODE BEGIN TIM4_Init 0 */
|
|
|
|
|
+
|
|
|
|
|
+ /* USER CODE END TIM4_Init 0 */
|
|
|
|
|
+
|
|
|
|
|
+ TIM_ClockConfigTypeDef sClockSourceConfig = {0};
|
|
|
|
|
+ TIM_MasterConfigTypeDef sMasterConfig = {0};
|
|
|
|
|
+
|
|
|
|
|
+ /* USER CODE BEGIN TIM4_Init 1 */
|
|
|
|
|
+
|
|
|
|
|
+ /* USER CODE END TIM4_Init 1 */
|
|
|
|
|
+ htim4.Instance = TIM4;
|
|
|
|
|
+ htim4.Init.Prescaler = 71;
|
|
|
|
|
+ htim4.Init.CounterMode = TIM_COUNTERMODE_UP;
|
|
|
|
|
+ htim4.Init.Period = 4999;
|
|
|
|
|
+ htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
|
|
|
|
+ htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
|
|
|
|
|
+ if (HAL_TIM_Base_Init(&htim4) != HAL_OK)
|
|
|
|
|
+ {
|
|
|
|
|
+ Error_Handler();
|
|
|
|
|
+ }
|
|
|
|
|
+ sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
|
|
|
|
|
+ if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK)
|
|
|
|
|
+ {
|
|
|
|
|
+ Error_Handler();
|
|
|
|
|
+ }
|
|
|
|
|
+ sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
|
|
|
|
|
+ sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
|
|
|
|
|
+ if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK)
|
|
|
|
|
+ {
|
|
|
|
|
+ Error_Handler();
|
|
|
|
|
+ }
|
|
|
|
|
+ /* USER CODE BEGIN TIM4_Init 2 */
|
|
|
|
|
+
|
|
|
|
|
+ /* USER CODE END TIM4_Init 2 */
|
|
|
|
|
+
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @brief USART1 Initialization Function
|
|
* @brief USART1 Initialization Function
|
|
|
* @param None
|
|
* @param None
|