- 通过右键 go to definition 找到函数 HalUARTOpen(), 打开发现有两个很重要的宏定义
(HAL_UART_DMA 和 HAL_UART_ISR ):
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8be66053fc1a879c4bb956668aa190a6.png)
2)对 HAL_UART_DMA 和 HAL_UART_ISR 进行查看, 发现在 hal_board_cfg.h 里, 有定
义:![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/038ab87731d0b20ea0f9d8e3640f5627.png)
回到文件 hal_uart.c, 查看串口的初始化函数 HalUARTInit()里的串口 1 初始化函数(在文
件_hal_uart_isr.c 里):跳转路径的顺序:HalUARTOpen/HalUARTOpenISR/_hal_uart_iar.c
static void HalUARTInitISR(void)
{
// Set P2 priority - USART0 over USART1 if both are defined.
P2DIR &= ~P2DIR_PRIPO;
P2DIR |= 0x40; //uart1 优先, uart 第二
#if (HAL_UART_ISR == 1)
PERCFG &= ~HAL_UART_PERCFG_BIT; // Set UART0 I/O location to P0.
#else
PERCFG &= ~HAL_UART_PERCFG_BIT; // 备用位置 0 (P04.P05)
#endif
PxSEL |= HAL_UART_Px_RX_TX; // Enable Tx