|
|
@@ -263,19 +263,22 @@ void USART3_IRQHandler(void)
|
|
|
__HAL_UART_CLEAR_IDLEFLAG(&huart3);
|
|
|
HAL_UART_DMAStop(&huart3);
|
|
|
|
|
|
- // uint32_t received_len = sizeof(rx_buf) - __HAL_DMA_GET_COUNTER(huart3.hdmarx);
|
|
|
+ uint32_t received_len = sizeof(rx_buf) - __HAL_DMA_GET_COUNTER(huart3.hdmarx);
|
|
|
// HAL_UART_Transmit(&huart1, rx_buf, received_len, 100);
|
|
|
- // if (receiveBlDataCount < 20)
|
|
|
- // {
|
|
|
- // receiveBlDataCount++;
|
|
|
- // memcpy(totalData[receiveBlDataCount], rx_buf, sizeof(rx_buf));
|
|
|
- // memset(rx_buf, 0, sizeof(rx_buf));
|
|
|
- // HAL_UART_Receive_DMA(&huart3, rx_buf, sizeof(rx_buf)); // 重新启动
|
|
|
- // }else {
|
|
|
- // printf("数据接收完毕");
|
|
|
- // }
|
|
|
+ if (receiveBlDataCount < 20)
|
|
|
+ {
|
|
|
+ receiveBlDataCount++;
|
|
|
+ memcpy(totalData[receiveBlDataCount], rx_buf, received_len);
|
|
|
+ memset(rx_buf, 0, received_len);
|
|
|
+ HAL_UART_Receive_DMA(&huart3, rx_buf, received_len); // 重新启动
|
|
|
+ }else {
|
|
|
+ printf("数据接收完毕");
|
|
|
+ workMode = 1;
|
|
|
+ }
|
|
|
// HAL_UART_Transmit(&huart2, rx_buf, 8, HAL_MAX_DELAY);
|
|
|
- memset(rx_buf, 0, sizeof(rx_buf));
|
|
|
+ // memset(rx_buf, 0, sizeof(rx_buf));
|
|
|
+ // const char *lora_data = "hello world\r\n"; // 建议加上回车换行
|
|
|
+ // HAL_UART_Transmit(&huart2, (uint8_t *)lora_data, strlen(lora_data), HAL_MAX_DELAY);
|
|
|
// HAL_UART_Receive_DMA(&huart3, rx_buf, sizeof(rx_buf)); // 重新启动
|
|
|
}
|
|
|
/* USER CODE END USART3_IRQn 1 */
|