USB转串口调试成功
This commit is contained in:
parent
11da0216f1
commit
338765ec78
|
@ -23,7 +23,8 @@
|
|||
#define __MAIN_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
|
@ -59,6 +60,7 @@ extern uart_t ble2_uart3;
|
|||
extern uart_t ble1_uart6;
|
||||
extern uart_t hart1_uart5;
|
||||
extern uart_t hart2_uart2;
|
||||
extern uart_t usb_uart1;
|
||||
#define DEST_IP_ADDR0 192
|
||||
#define DEST_IP_ADDR1 168
|
||||
#define DEST_IP_ADDR2 1
|
||||
|
@ -71,20 +73,20 @@ extern uart_t hart2_uart2;
|
|||
|
||||
#define LOCAL_PORT 5001
|
||||
|
||||
/* USER CODE END ET */
|
||||
/* USER CODE END ET */
|
||||
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EC */
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EC */
|
||||
|
||||
/* USER CODE END EC */
|
||||
/* USER CODE END EC */
|
||||
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EM */
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EM */
|
||||
|
||||
/* USER CODE END EM */
|
||||
/* USER CODE END EM */
|
||||
|
||||
/* Exported functions prototypes ---------------------------------------------*/
|
||||
void Error_Handler(void);
|
||||
/* Exported functions prototypes ---------------------------------------------*/
|
||||
void Error_Handler(void);
|
||||
|
||||
/* USER CODE BEGIN EFP */
|
||||
|
||||
|
@ -137,6 +139,10 @@ void Error_Handler(void);
|
|||
#define DI_CH2_GPIO_Port GPIOC
|
||||
#define HART1_RST_Pin GPIO_PIN_8
|
||||
#define HART1_RST_GPIO_Port GPIOA
|
||||
#define USB_TX_Pin GPIO_PIN_9
|
||||
#define USB_TX_GPIO_Port GPIOA
|
||||
#define USB_RX_Pin GPIO_PIN_10
|
||||
#define USB_RX_GPIO_Port GPIOA
|
||||
#define DI_CH3_Pin GPIO_PIN_11
|
||||
#define DI_CH3_GPIO_Port GPIOA
|
||||
#define DI_CH4_Pin GPIO_PIN_12
|
||||
|
@ -179,7 +185,7 @@ void Error_Handler(void);
|
|||
/* USER CODE BEGIN Private defines */
|
||||
#define TRUE 0
|
||||
#define FAIL -1
|
||||
/* USER CODE END Private defines */
|
||||
/* USER CODE END Private defines */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -63,14 +63,17 @@ void DMA1_Stream5_IRQHandler(void);
|
|||
void DMA1_Stream6_IRQHandler(void);
|
||||
void TIM3_IRQHandler(void);
|
||||
void TIM4_IRQHandler(void);
|
||||
void USART1_IRQHandler(void);
|
||||
void USART2_IRQHandler(void);
|
||||
void USART3_IRQHandler(void);
|
||||
void DMA1_Stream7_IRQHandler(void);
|
||||
void UART4_IRQHandler(void);
|
||||
void UART5_IRQHandler(void);
|
||||
void DMA2_Stream1_IRQHandler(void);
|
||||
void DMA2_Stream2_IRQHandler(void);
|
||||
void ETH_IRQHandler(void);
|
||||
void DMA2_Stream6_IRQHandler(void);
|
||||
void DMA2_Stream7_IRQHandler(void);
|
||||
void USART6_IRQHandler(void);
|
||||
/* USER CODE BEGIN EFP */
|
||||
|
||||
|
|
|
@ -36,6 +36,8 @@ extern UART_HandleTypeDef huart4;
|
|||
|
||||
extern UART_HandleTypeDef huart5;
|
||||
|
||||
extern UART_HandleTypeDef huart1;
|
||||
|
||||
extern UART_HandleTypeDef huart2;
|
||||
|
||||
extern UART_HandleTypeDef huart3;
|
||||
|
@ -53,6 +55,7 @@ extern UART_HandleTypeDef huart6;
|
|||
|
||||
void MX_UART4_Init(void);
|
||||
void MX_UART5_Init(void);
|
||||
void MX_USART1_UART_Init(void);
|
||||
void MX_USART2_UART_Init(void);
|
||||
void MX_USART3_UART_Init(void);
|
||||
void MX_USART6_UART_Init(void);
|
||||
|
|
|
@ -71,9 +71,15 @@ void MX_DMA_Init(void)
|
|||
/* DMA2_Stream1_IRQn interrupt configuration */
|
||||
HAL_NVIC_SetPriority(DMA2_Stream1_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(DMA2_Stream1_IRQn);
|
||||
/* DMA2_Stream2_IRQn interrupt configuration */
|
||||
HAL_NVIC_SetPriority(DMA2_Stream2_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(DMA2_Stream2_IRQn);
|
||||
/* DMA2_Stream6_IRQn interrupt configuration */
|
||||
HAL_NVIC_SetPriority(DMA2_Stream6_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(DMA2_Stream6_IRQn);
|
||||
/* DMA2_Stream7_IRQn interrupt configuration */
|
||||
HAL_NVIC_SetPriority(DMA2_Stream7_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -65,18 +65,18 @@ int direction = 0;
|
|||
int encode_num = 0;
|
||||
/* USER CODE END FunctionPrototypes */
|
||||
|
||||
void start_tcp_task(void const *argument);
|
||||
void start_led_toggle_task(void const *argument);
|
||||
void start_dac_task(void const *argument);
|
||||
void start_adc_task(void const *argument);
|
||||
void start_gpio_di_do_task(void const *argument);
|
||||
void start_ec11_task(void const *argument);
|
||||
void start_tcp_task(void const * argument);
|
||||
void start_led_toggle_task(void const * argument);
|
||||
void start_dac_task(void const * argument);
|
||||
void start_adc_task(void const * argument);
|
||||
void start_gpio_di_do_task(void const * argument);
|
||||
void start_ec11_task(void const * argument);
|
||||
|
||||
extern void MX_LWIP_Init(void);
|
||||
void MX_FREERTOS_Init(void); /* (MISRA C 2004 rule 8.1) */
|
||||
|
||||
/* GetIdleTaskMemory prototype (linked to static allocation support) */
|
||||
void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize);
|
||||
void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer, StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize );
|
||||
|
||||
/* USER CODE BEGIN GET_IDLE_TASK_MEMORY */
|
||||
static StaticTask_t xIdleTaskTCBBuffer;
|
||||
|
@ -96,8 +96,7 @@ void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, StackTyp
|
|||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
void MX_FREERTOS_Init(void)
|
||||
{
|
||||
void MX_FREERTOS_Init(void) {
|
||||
/* USER CODE BEGIN Init */
|
||||
|
||||
/* USER CODE END Init */
|
||||
|
@ -146,6 +145,7 @@ void MX_FREERTOS_Init(void)
|
|||
/* USER CODE BEGIN RTOS_THREADS */
|
||||
/* add threads, ... */
|
||||
/* USER CODE END RTOS_THREADS */
|
||||
|
||||
}
|
||||
|
||||
/* USER CODE BEGIN Header_start_tcp_task */
|
||||
|
@ -155,7 +155,7 @@ void MX_FREERTOS_Init(void)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_tcp_task */
|
||||
void start_tcp_task(void const *argument)
|
||||
void start_tcp_task(void const * argument)
|
||||
{
|
||||
/* init code for LWIP */
|
||||
MX_LWIP_Init();
|
||||
|
@ -176,7 +176,7 @@ void start_tcp_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_led_toggle_task */
|
||||
void start_led_toggle_task(void const *argument)
|
||||
void start_led_toggle_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_led_toggle_task */
|
||||
/* Infinite loop */
|
||||
|
@ -195,7 +195,7 @@ void start_led_toggle_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_dac_task */
|
||||
void start_dac_task(void const *argument)
|
||||
void start_dac_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_dac_task */
|
||||
dac161s997_init();
|
||||
|
@ -218,7 +218,7 @@ void start_dac_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_adc_task */
|
||||
void start_adc_task(void const *argument)
|
||||
void start_adc_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_adc_task */
|
||||
ad7124_setup();
|
||||
|
@ -253,7 +253,7 @@ void start_adc_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_gpio_di_do_task */
|
||||
void start_gpio_di_do_task(void const *argument)
|
||||
void start_gpio_di_do_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_gpio_di_do_task */
|
||||
/* Infinite loop */
|
||||
|
@ -271,7 +271,7 @@ void start_gpio_di_do_task(void const *argument)
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_start_ec11_task */
|
||||
void start_ec11_task(void const *argument)
|
||||
void start_ec11_task(void const * argument)
|
||||
{
|
||||
/* USER CODE BEGIN start_ec11_task */
|
||||
/* Infinite loop */
|
||||
|
|
|
@ -70,6 +70,7 @@ uart_t ble1_uart6 = {0};
|
|||
uart_t ble2_uart3 = {0};
|
||||
uart_t hart2_uart2 = {0};
|
||||
uart_t hart1_uart5 = {0};
|
||||
uart_t usb_uart1 = {0};
|
||||
float current_buff[2] = {0, 0};
|
||||
|
||||
uint8_t tcp_echo_flags_hart1 = 0;
|
||||
|
@ -117,6 +118,7 @@ int main(void)
|
|||
MX_USART2_UART_Init();
|
||||
MX_USART3_UART_Init();
|
||||
MX_TIM1_Init();
|
||||
MX_USART1_UART_Init();
|
||||
/* USER CODE BEGIN 2 */
|
||||
// HAL_GPIO_WritePin(DO_EN_GPIO_Port, DO_EN_Pin, GPIO_PIN_SET); // DO输出使能
|
||||
|
||||
|
@ -125,6 +127,7 @@ int main(void)
|
|||
HAL_UARTEx_ReceiveToIdle_DMA(&huart3, ble2_uart3.rx_data_temp, ARRAY_LEN(ble2_uart3.rx_data_temp));
|
||||
HAL_UARTEx_ReceiveToIdle_DMA(&huart5, hart1_uart5.rx_data_temp, ARRAY_LEN(hart1_uart5.rx_data_temp));
|
||||
HAL_UARTEx_ReceiveToIdle_DMA(&huart2, hart2_uart2.rx_data_temp, ARRAY_LEN(hart2_uart2.rx_data_temp));
|
||||
HAL_UARTEx_ReceiveToIdle_DMA(&huart1, usb_uart1.rx_data_temp, ARRAY_LEN(usb_uart1.rx_data_temp));
|
||||
hart_ht1200m_reset(); // 初始化HT1200M模块
|
||||
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1); // PWM输出,用于驱动HT1200M模块
|
||||
HAL_TIM_Encoder_Start(&htim1, TIM_CHANNEL_ALL);
|
||||
|
@ -179,8 +182,7 @@ void SystemClock_Config(void)
|
|||
|
||||
/** Initializes the CPU, AHB and APB buses clocks
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
|
||||
|
@ -196,6 +198,15 @@ void SystemClock_Config(void)
|
|||
|
||||
void HAL_UARTEx_RxEventCallback(UART_HandleTypeDef *huart, uint16_t Size)
|
||||
{
|
||||
if (huart == &huart1)
|
||||
{
|
||||
__HAL_UNLOCK(huart);
|
||||
usb_uart1.rx_num = Size;
|
||||
memset(usb_uart1.rx_data, 0, ARRAY_LEN(usb_uart1.rx_data));
|
||||
memcpy(usb_uart1.rx_data, usb_uart1.rx_data_temp, Size);
|
||||
HAL_UARTEx_ReceiveToIdle_DMA(&huart1, usb_uart1.rx_data_temp, ARRAY_LEN(usb_uart1.rx_data_temp));
|
||||
dma_usart_send(&huart1, usb_uart1.rx_data_temp, usb_uart1.rx_num);
|
||||
}
|
||||
if (huart == &huart6)
|
||||
{
|
||||
__HAL_UNLOCK(huart);
|
||||
|
@ -271,7 +282,8 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
|||
/* USER CODE BEGIN Callback 0 */
|
||||
|
||||
/* USER CODE END Callback 0 */
|
||||
if (htim->Instance == TIM4) {
|
||||
if (htim->Instance == TIM4)
|
||||
{
|
||||
HAL_IncTick();
|
||||
}
|
||||
/* USER CODE BEGIN Callback 1 */
|
||||
|
|
|
@ -67,6 +67,8 @@ extern DMA_HandleTypeDef hdma_uart4_rx;
|
|||
extern DMA_HandleTypeDef hdma_uart4_tx;
|
||||
extern DMA_HandleTypeDef hdma_uart5_tx;
|
||||
extern DMA_HandleTypeDef hdma_uart5_rx;
|
||||
extern DMA_HandleTypeDef hdma_usart1_rx;
|
||||
extern DMA_HandleTypeDef hdma_usart1_tx;
|
||||
extern DMA_HandleTypeDef hdma_usart2_rx;
|
||||
extern DMA_HandleTypeDef hdma_usart2_tx;
|
||||
extern DMA_HandleTypeDef hdma_usart3_rx;
|
||||
|
@ -75,6 +77,7 @@ extern DMA_HandleTypeDef hdma_usart6_rx;
|
|||
extern DMA_HandleTypeDef hdma_usart6_tx;
|
||||
extern UART_HandleTypeDef huart4;
|
||||
extern UART_HandleTypeDef huart5;
|
||||
extern UART_HandleTypeDef huart1;
|
||||
extern UART_HandleTypeDef huart2;
|
||||
extern UART_HandleTypeDef huart3;
|
||||
extern UART_HandleTypeDef huart6;
|
||||
|
@ -336,6 +339,20 @@ void TIM4_IRQHandler(void)
|
|||
/* USER CODE END TIM4_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART1 global interrupt.
|
||||
*/
|
||||
void USART1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART1_IRQn 0 */
|
||||
|
||||
/* USER CODE END USART1_IRQn 0 */
|
||||
HAL_UART_IRQHandler(&huart1);
|
||||
/* USER CODE BEGIN USART1_IRQn 1 */
|
||||
|
||||
/* USER CODE END USART1_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART2 global interrupt.
|
||||
*/
|
||||
|
@ -460,6 +477,20 @@ void DMA2_Stream1_IRQHandler(void)
|
|||
/* USER CODE END DMA2_Stream1_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA2 stream2 global interrupt.
|
||||
*/
|
||||
void DMA2_Stream2_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream2_IRQn 0 */
|
||||
|
||||
/* USER CODE END DMA2_Stream2_IRQn 0 */
|
||||
HAL_DMA_IRQHandler(&hdma_usart1_rx);
|
||||
/* USER CODE BEGIN DMA2_Stream2_IRQn 1 */
|
||||
|
||||
/* USER CODE END DMA2_Stream2_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles Ethernet global interrupt.
|
||||
*/
|
||||
|
@ -488,6 +519,20 @@ void DMA2_Stream6_IRQHandler(void)
|
|||
/* USER CODE END DMA2_Stream6_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA2 stream7 global interrupt.
|
||||
*/
|
||||
void DMA2_Stream7_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream7_IRQn 0 */
|
||||
|
||||
/* USER CODE END DMA2_Stream7_IRQn 0 */
|
||||
HAL_DMA_IRQHandler(&hdma_usart1_tx);
|
||||
/* USER CODE BEGIN DMA2_Stream7_IRQn 1 */
|
||||
|
||||
/* USER CODE END DMA2_Stream7_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles USART6 global interrupt.
|
||||
*/
|
||||
|
|
120
Core/Src/usart.c
120
Core/Src/usart.c
|
@ -25,6 +25,7 @@
|
|||
|
||||
UART_HandleTypeDef huart4;
|
||||
UART_HandleTypeDef huart5;
|
||||
UART_HandleTypeDef huart1;
|
||||
UART_HandleTypeDef huart2;
|
||||
UART_HandleTypeDef huart3;
|
||||
UART_HandleTypeDef huart6;
|
||||
|
@ -32,6 +33,8 @@ DMA_HandleTypeDef hdma_uart4_rx;
|
|||
DMA_HandleTypeDef hdma_uart4_tx;
|
||||
DMA_HandleTypeDef hdma_uart5_tx;
|
||||
DMA_HandleTypeDef hdma_uart5_rx;
|
||||
DMA_HandleTypeDef hdma_usart1_rx;
|
||||
DMA_HandleTypeDef hdma_usart1_tx;
|
||||
DMA_HandleTypeDef hdma_usart2_rx;
|
||||
DMA_HandleTypeDef hdma_usart2_tx;
|
||||
DMA_HandleTypeDef hdma_usart3_rx;
|
||||
|
@ -95,6 +98,35 @@ void MX_UART5_Init(void)
|
|||
// __HAL_UART_ENABLE_IT(&huart5, UART_IT_IDLE); // 空闲中断
|
||||
/* USER CODE END UART5_Init 2 */
|
||||
|
||||
}
|
||||
/* USART1 init function */
|
||||
|
||||
void MX_USART1_UART_Init(void)
|
||||
{
|
||||
|
||||
/* USER CODE BEGIN USART1_Init 0 */
|
||||
|
||||
/* USER CODE END USART1_Init 0 */
|
||||
|
||||
/* USER CODE BEGIN USART1_Init 1 */
|
||||
|
||||
/* USER CODE END USART1_Init 1 */
|
||||
huart1.Instance = USART1;
|
||||
huart1.Init.BaudRate = 115200;
|
||||
huart1.Init.WordLength = UART_WORDLENGTH_8B;
|
||||
huart1.Init.StopBits = UART_STOPBITS_1;
|
||||
huart1.Init.Parity = UART_PARITY_NONE;
|
||||
huart1.Init.Mode = UART_MODE_TX_RX;
|
||||
huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
|
||||
huart1.Init.OverSampling = UART_OVERSAMPLING_16;
|
||||
if (HAL_UART_Init(&huart1) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
/* USER CODE BEGIN USART1_Init 2 */
|
||||
|
||||
/* USER CODE END USART1_Init 2 */
|
||||
|
||||
}
|
||||
/* USART2 init function */
|
||||
|
||||
|
@ -325,6 +357,70 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
|
|||
|
||||
/* USER CODE END UART5_MspInit 1 */
|
||||
}
|
||||
else if(uartHandle->Instance==USART1)
|
||||
{
|
||||
/* USER CODE BEGIN USART1_MspInit 0 */
|
||||
|
||||
/* USER CODE END USART1_MspInit 0 */
|
||||
/* USART1 clock enable */
|
||||
__HAL_RCC_USART1_CLK_ENABLE();
|
||||
|
||||
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||
/**USART1 GPIO Configuration
|
||||
PA9 ------> USART1_TX
|
||||
PA10 ------> USART1_RX
|
||||
*/
|
||||
GPIO_InitStruct.Pin = USB_TX_Pin|USB_RX_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||
GPIO_InitStruct.Alternate = GPIO_AF7_USART1;
|
||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||
|
||||
/* USART1 DMA Init */
|
||||
/* USART1_RX Init */
|
||||
hdma_usart1_rx.Instance = DMA2_Stream2;
|
||||
hdma_usart1_rx.Init.Channel = DMA_CHANNEL_4;
|
||||
hdma_usart1_rx.Init.Direction = DMA_PERIPH_TO_MEMORY;
|
||||
hdma_usart1_rx.Init.PeriphInc = DMA_PINC_DISABLE;
|
||||
hdma_usart1_rx.Init.MemInc = DMA_MINC_ENABLE;
|
||||
hdma_usart1_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
|
||||
hdma_usart1_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
|
||||
hdma_usart1_rx.Init.Mode = DMA_NORMAL;
|
||||
hdma_usart1_rx.Init.Priority = DMA_PRIORITY_LOW;
|
||||
hdma_usart1_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
|
||||
if (HAL_DMA_Init(&hdma_usart1_rx) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
__HAL_LINKDMA(uartHandle,hdmarx,hdma_usart1_rx);
|
||||
|
||||
/* USART1_TX Init */
|
||||
hdma_usart1_tx.Instance = DMA2_Stream7;
|
||||
hdma_usart1_tx.Init.Channel = DMA_CHANNEL_4;
|
||||
hdma_usart1_tx.Init.Direction = DMA_MEMORY_TO_PERIPH;
|
||||
hdma_usart1_tx.Init.PeriphInc = DMA_PINC_DISABLE;
|
||||
hdma_usart1_tx.Init.MemInc = DMA_MINC_ENABLE;
|
||||
hdma_usart1_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
|
||||
hdma_usart1_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
|
||||
hdma_usart1_tx.Init.Mode = DMA_NORMAL;
|
||||
hdma_usart1_tx.Init.Priority = DMA_PRIORITY_LOW;
|
||||
hdma_usart1_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
|
||||
if (HAL_DMA_Init(&hdma_usart1_tx) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
__HAL_LINKDMA(uartHandle,hdmatx,hdma_usart1_tx);
|
||||
|
||||
/* USART1 interrupt Init */
|
||||
HAL_NVIC_SetPriority(USART1_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(USART1_IRQn);
|
||||
/* USER CODE BEGIN USART1_MspInit 1 */
|
||||
|
||||
/* USER CODE END USART1_MspInit 1 */
|
||||
}
|
||||
else if(uartHandle->Instance==USART2)
|
||||
{
|
||||
/* USER CODE BEGIN USART2_MspInit 0 */
|
||||
|
@ -572,6 +668,30 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle)
|
|||
|
||||
/* USER CODE END UART5_MspDeInit 1 */
|
||||
}
|
||||
else if(uartHandle->Instance==USART1)
|
||||
{
|
||||
/* USER CODE BEGIN USART1_MspDeInit 0 */
|
||||
|
||||
/* USER CODE END USART1_MspDeInit 0 */
|
||||
/* Peripheral clock disable */
|
||||
__HAL_RCC_USART1_CLK_DISABLE();
|
||||
|
||||
/**USART1 GPIO Configuration
|
||||
PA9 ------> USART1_TX
|
||||
PA10 ------> USART1_RX
|
||||
*/
|
||||
HAL_GPIO_DeInit(GPIOA, USB_TX_Pin|USB_RX_Pin);
|
||||
|
||||
/* USART1 DMA DeInit */
|
||||
HAL_DMA_DeInit(uartHandle->hdmarx);
|
||||
HAL_DMA_DeInit(uartHandle->hdmatx);
|
||||
|
||||
/* USART1 interrupt Deinit */
|
||||
HAL_NVIC_DisableIRQ(USART1_IRQn);
|
||||
/* USER CODE BEGIN USART1_MspDeInit 1 */
|
||||
|
||||
/* USER CODE END USART1_MspDeInit 1 */
|
||||
}
|
||||
else if(uartHandle->Instance==USART2)
|
||||
{
|
||||
/* USER CODE BEGIN USART2_MspDeInit 0 */
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -4,6 +4,8 @@ CAD.pinconfig=
|
|||
CAD.provider=
|
||||
Dma.Request0=USART6_RX
|
||||
Dma.Request1=USART6_TX
|
||||
Dma.Request10=USART1_RX
|
||||
Dma.Request11=USART1_TX
|
||||
Dma.Request2=UART4_RX
|
||||
Dma.Request3=UART4_TX
|
||||
Dma.Request4=USART3_RX
|
||||
|
@ -12,7 +14,7 @@ Dma.Request6=UART5_TX
|
|||
Dma.Request7=UART5_RX
|
||||
Dma.Request8=USART2_RX
|
||||
Dma.Request9=USART2_TX
|
||||
Dma.RequestsNb=10
|
||||
Dma.RequestsNb=12
|
||||
Dma.UART4_RX.2.Direction=DMA_PERIPH_TO_MEMORY
|
||||
Dma.UART4_RX.2.FIFOMode=DMA_FIFOMODE_DISABLE
|
||||
Dma.UART4_RX.2.Instance=DMA1_Stream2
|
||||
|
@ -53,6 +55,26 @@ Dma.UART5_TX.6.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
|
|||
Dma.UART5_TX.6.PeriphInc=DMA_PINC_DISABLE
|
||||
Dma.UART5_TX.6.Priority=DMA_PRIORITY_VERY_HIGH
|
||||
Dma.UART5_TX.6.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority,FIFOMode
|
||||
Dma.USART1_RX.10.Direction=DMA_PERIPH_TO_MEMORY
|
||||
Dma.USART1_RX.10.FIFOMode=DMA_FIFOMODE_DISABLE
|
||||
Dma.USART1_RX.10.Instance=DMA2_Stream2
|
||||
Dma.USART1_RX.10.MemDataAlignment=DMA_MDATAALIGN_BYTE
|
||||
Dma.USART1_RX.10.MemInc=DMA_MINC_ENABLE
|
||||
Dma.USART1_RX.10.Mode=DMA_NORMAL
|
||||
Dma.USART1_RX.10.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
|
||||
Dma.USART1_RX.10.PeriphInc=DMA_PINC_DISABLE
|
||||
Dma.USART1_RX.10.Priority=DMA_PRIORITY_LOW
|
||||
Dma.USART1_RX.10.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority,FIFOMode
|
||||
Dma.USART1_TX.11.Direction=DMA_MEMORY_TO_PERIPH
|
||||
Dma.USART1_TX.11.FIFOMode=DMA_FIFOMODE_DISABLE
|
||||
Dma.USART1_TX.11.Instance=DMA2_Stream7
|
||||
Dma.USART1_TX.11.MemDataAlignment=DMA_MDATAALIGN_BYTE
|
||||
Dma.USART1_TX.11.MemInc=DMA_MINC_ENABLE
|
||||
Dma.USART1_TX.11.Mode=DMA_NORMAL
|
||||
Dma.USART1_TX.11.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
|
||||
Dma.USART1_TX.11.PeriphInc=DMA_PINC_DISABLE
|
||||
Dma.USART1_TX.11.Priority=DMA_PRIORITY_LOW
|
||||
Dma.USART1_TX.11.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority,FIFOMode
|
||||
Dma.USART2_RX.8.Direction=DMA_PERIPH_TO_MEMORY
|
||||
Dma.USART2_RX.8.FIFOMode=DMA_FIFOMODE_DISABLE
|
||||
Dma.USART2_RX.8.Instance=DMA1_Stream5
|
||||
|
@ -150,9 +172,10 @@ Mcu.IP1=ETH
|
|||
Mcu.IP10=TIM3
|
||||
Mcu.IP11=UART4
|
||||
Mcu.IP12=UART5
|
||||
Mcu.IP13=USART2
|
||||
Mcu.IP14=USART3
|
||||
Mcu.IP15=USART6
|
||||
Mcu.IP13=USART1
|
||||
Mcu.IP14=USART2
|
||||
Mcu.IP15=USART3
|
||||
Mcu.IP16=USART6
|
||||
Mcu.IP2=FREERTOS
|
||||
Mcu.IP3=LWIP
|
||||
Mcu.IP4=NVIC
|
||||
|
@ -161,7 +184,7 @@ Mcu.IP6=SPI1
|
|||
Mcu.IP7=SYS
|
||||
Mcu.IP8=TIM1
|
||||
Mcu.IP9=TIM2
|
||||
Mcu.IPNb=16
|
||||
Mcu.IPNb=17
|
||||
Mcu.Name=STM32F407V(E-G)Tx
|
||||
Mcu.Package=LQFP100
|
||||
Mcu.Pin0=PE2
|
||||
|
@ -192,41 +215,43 @@ Mcu.Pin30=PC7
|
|||
Mcu.Pin31=PC8
|
||||
Mcu.Pin32=PC9
|
||||
Mcu.Pin33=PA8
|
||||
Mcu.Pin34=PA11
|
||||
Mcu.Pin35=PA12
|
||||
Mcu.Pin36=PA13
|
||||
Mcu.Pin37=PA14
|
||||
Mcu.Pin38=PA15
|
||||
Mcu.Pin39=PC10
|
||||
Mcu.Pin34=PA9
|
||||
Mcu.Pin35=PA10
|
||||
Mcu.Pin36=PA11
|
||||
Mcu.Pin37=PA12
|
||||
Mcu.Pin38=PA13
|
||||
Mcu.Pin39=PA14
|
||||
Mcu.Pin4=PC0
|
||||
Mcu.Pin40=PC11
|
||||
Mcu.Pin41=PC12
|
||||
Mcu.Pin42=PD0
|
||||
Mcu.Pin43=PD1
|
||||
Mcu.Pin44=PD2
|
||||
Mcu.Pin45=PD3
|
||||
Mcu.Pin46=PD4
|
||||
Mcu.Pin47=PD5
|
||||
Mcu.Pin48=PD6
|
||||
Mcu.Pin49=PD7
|
||||
Mcu.Pin40=PA15
|
||||
Mcu.Pin41=PC10
|
||||
Mcu.Pin42=PC11
|
||||
Mcu.Pin43=PC12
|
||||
Mcu.Pin44=PD0
|
||||
Mcu.Pin45=PD1
|
||||
Mcu.Pin46=PD2
|
||||
Mcu.Pin47=PD3
|
||||
Mcu.Pin48=PD4
|
||||
Mcu.Pin49=PD5
|
||||
Mcu.Pin5=PC1
|
||||
Mcu.Pin50=PB3
|
||||
Mcu.Pin51=PB4
|
||||
Mcu.Pin52=PB5
|
||||
Mcu.Pin53=PB6
|
||||
Mcu.Pin54=PB7
|
||||
Mcu.Pin55=PE0
|
||||
Mcu.Pin56=PE1
|
||||
Mcu.Pin57=VP_FREERTOS_VS_CMSIS_V1
|
||||
Mcu.Pin58=VP_LWIP_VS_Enabled
|
||||
Mcu.Pin59=VP_SYS_VS_tim4
|
||||
Mcu.Pin50=PD6
|
||||
Mcu.Pin51=PD7
|
||||
Mcu.Pin52=PB3
|
||||
Mcu.Pin53=PB4
|
||||
Mcu.Pin54=PB5
|
||||
Mcu.Pin55=PB6
|
||||
Mcu.Pin56=PB7
|
||||
Mcu.Pin57=PE0
|
||||
Mcu.Pin58=PE1
|
||||
Mcu.Pin59=VP_FREERTOS_VS_CMSIS_V1
|
||||
Mcu.Pin6=PA1
|
||||
Mcu.Pin60=VP_TIM2_VS_ClockSourceINT
|
||||
Mcu.Pin61=VP_TIM3_VS_ClockSourceINT
|
||||
Mcu.Pin60=VP_LWIP_VS_Enabled
|
||||
Mcu.Pin61=VP_SYS_VS_tim4
|
||||
Mcu.Pin62=VP_TIM2_VS_ClockSourceINT
|
||||
Mcu.Pin63=VP_TIM3_VS_ClockSourceINT
|
||||
Mcu.Pin7=PA2
|
||||
Mcu.Pin8=PA7
|
||||
Mcu.Pin9=PC4
|
||||
Mcu.PinsNb=62
|
||||
Mcu.PinsNb=64
|
||||
Mcu.ThirdPartyNb=0
|
||||
Mcu.UserConstants=
|
||||
Mcu.UserName=STM32F407VGTx
|
||||
|
@ -242,7 +267,9 @@ NVIC.DMA1_Stream5_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
|||
NVIC.DMA1_Stream6_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA1_Stream7_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA2_Stream1_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA2_Stream2_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA2_Stream6_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA2_Stream7_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
||||
NVIC.ETH_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.EXTI1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
|
@ -264,12 +291,17 @@ NVIC.TimeBase=TIM4_IRQn
|
|||
NVIC.TimeBaseIP=TIM4
|
||||
NVIC.UART4_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.UART5_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.USART1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.USART2_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.USART3_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.USART6_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
||||
PA1.Mode=RMII
|
||||
PA1.Signal=ETH_REF_CLK
|
||||
PA10.GPIOParameters=GPIO_Label
|
||||
PA10.GPIO_Label=USB_RX
|
||||
PA10.Mode=Asynchronous
|
||||
PA10.Signal=USART1_RX
|
||||
PA11.GPIOParameters=GPIO_PuPd,GPIO_Label
|
||||
PA11.GPIO_Label=DI_CH3
|
||||
PA11.GPIO_PuPd=GPIO_PULLUP
|
||||
|
@ -300,6 +332,10 @@ PA8.GPIO_Speed=GPIO_SPEED_FREQ_VERY_HIGH
|
|||
PA8.Locked=true
|
||||
PA8.PinState=GPIO_PIN_SET
|
||||
PA8.Signal=GPIO_Output
|
||||
PA9.GPIOParameters=GPIO_Label
|
||||
PA9.GPIO_Label=USB_TX
|
||||
PA9.Mode=Asynchronous
|
||||
PA9.Signal=USART1_TX
|
||||
PB1.GPIOParameters=GPIO_Speed,PinState,GPIO_PuPd,GPIO_Label
|
||||
PB1.GPIO_Label=LED3_R
|
||||
PB1.GPIO_PuPd=GPIO_PULLUP
|
||||
|
@ -573,7 +609,7 @@ ProjectManager.StackSize=0x400
|
|||
ProjectManager.TargetToolchain=MDK-ARM V5.32
|
||||
ProjectManager.ToolChainLocation=
|
||||
ProjectManager.UnderRoot=false
|
||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_DMA_Init-DMA-false-HAL-true,4-MX_LWIP_Init-LWIP-false-HAL-false,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_SPI1_Init-SPI1-false-HAL-true,7-MX_USART6_UART_Init-USART6-false-HAL-true,8-MX_UART4_Init-UART4-false-HAL-true,9-MX_TIM2_Init-TIM2-false-HAL-true,10-MX_UART5_Init-UART5-false-HAL-true,11-MX_USART2_UART_Init-USART2-false-HAL-true,12-MX_USART3_UART_Init-USART3-false-HAL-true
|
||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_DMA_Init-DMA-false-HAL-true,4-MX_LWIP_Init-LWIP-false-HAL-false,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_SPI1_Init-SPI1-false-HAL-true,7-MX_USART6_UART_Init-USART6-false-HAL-true,8-MX_UART4_Init-UART4-false-HAL-true,9-MX_TIM2_Init-TIM2-false-HAL-true,10-MX_UART5_Init-UART5-false-HAL-true,11-MX_USART2_UART_Init-USART2-false-HAL-true,12-MX_USART3_UART_Init-USART3-false-HAL-true,13-MX_TIM1_Init-TIM1-false-HAL-true,14-MX_USART1_UART_Init-USART1-false-HAL-true
|
||||
RCC.48MHZClocksFreq_Value=55296000
|
||||
RCC.AHBFreq_Value=110592000
|
||||
RCC.APB1CLKDivider=RCC_HCLK_DIV4
|
||||
|
@ -643,6 +679,8 @@ UART5.IPParameters=VirtualMode,BaudRate,WordLength,Parity
|
|||
UART5.Parity=PARITY_ODD
|
||||
UART5.VirtualMode=Asynchronous
|
||||
UART5.WordLength=WORDLENGTH_9B
|
||||
USART1.IPParameters=VirtualMode
|
||||
USART1.VirtualMode=VM_ASYNC
|
||||
USART2.BaudRate=1200
|
||||
USART2.IPParameters=VirtualMode,BaudRate,WordLength,Parity
|
||||
USART2.Parity=PARITY_ODD
|
||||
|
|
Loading…
Reference in New Issue