一、简介
通用同步异步收发器(USART)是一种全双工串行数据交换接口,支持同步或异步通信。可灵活配置,以便于与多种外部设备进行全双工数据交换。
USART 接口发送与接收波特率可配置,也支持通过 DMA 进行连续通信。USART 还支持多处理器通信、LIN 模式、同步模式、单线半双工通信、智能卡异步协议、IrDA SIR ENDEC 功能、以及硬件流控制功能。支持全双工通信。
USART 框图
二、无法正常打印异常排查
- 确认 UART TX/RX 是否接好 (MCU_PA9/TX1、MCU_PA10/RX1)
- 验证确认现象,对异常现象分析可能的原因。
- 结合《 UM_N32L40x 系列用户手册 0.pdf 》和《 DS_N32L40x 系列数据手册 V1.0.pdf 》逐步排查。
2.1 结合原理图排查硬件接线
具体步骤:
2.1.1 确保板子上电正常,并正确连接 Debug USB 口到 PC 端
2.1.2 检查跳线 MCU_RX/MCU_TX 接线帽是否连接
2.2 验证现象
具体步骤:
2.2.1 打开 PC 端 XCOM,并设定 波特率、停止位、数据位、奇偶校验位
2.2.2 不更改代码的情况下,先烧写代码到 Demo 板
2.2.3 复位板子观察现象(确认无法打印)
2.3 排查软件
具体步骤:
2.3.1 检查 RCC_Configuration 是否使能相应时钟
2.3.2 查看 GPIO_Configuration() 配置是否正常
2.3.3 修改后,重新编译下载测试
/*检查 Uart 时钟配置 */
void RCC_Configuration(void)
{
/* Enable GPIO clock */
GPIO_APBxClkCmd(USARTx_GPIO_CLK, ENABLE);
/* Enable USARTx Clock */
USART_APBxClkCmd(USARTx_CLK, ENABLE);
}
#define GPIO_APBxClkCmd RCC_EnableAPB2PeriphClk
#define USARTx_GPIO_CLK RCC_APB2_PERIPH_GPIOA
/*检查 GPIO配置 */
void GPIO_Configuration(void)
{
GPIO_InitType GPIO_InitStructure;
/* Initialize GPIO_InitStructure */
GPIO_InitStruct(&GPIO_InitStructure);
/* Configure USARTx Tx as alternate function push-pull */
GPIO_InitStructure.Pin = USARTx_TxPin;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Alternate = USARTx_Tx_GPIO_AF;
GPIO_InitPeripheral(USARTx_GPIO, &GPIO_InitStructure);
/* Configure USARTx Rx as alternate function push-pull and pull-up */
GPIO_InitStructure.Pin = USARTx_RxPin;
GPIO_InitStructure.GPIO_Pull = GPIO_Pull_Up;
GPIO_InitStructure.GPIO_Alternate = USARTx_Rx_GPIO_AF;
GPIO_InitPeripheral(USARTx_GPIO, &GPIO_InitStructure);
}
#define USARTx_RxPin GPIO_PIN_10
#define USARTx_TxPin GPIO_PIN_9
#define USARTx USART1
#define USARTx_GPIO GPIOA
#define USARTx_Rx_GPIO_AF GPIO_AF1_USART1
#define USARTx_Tx_GPIO_AF GPIO_AF1_USART1
通过 UM_N32L40x 系列用户手册 V1.0.pdf 手册,查找 GPIO 和 AFIO 章节,5.2.5.9.1 USART1 管脚重映射,发现 GPIO 重映射配置不正确,应该配置为 AF4,重新修改编译下载到 Demo 板运行正常。
#define USARTx_Rx_GPIO_AF GPIO_AF4_USART1
#define USARTx_Tx_GPIO_AF GPIO_AF4_USART1
三、参考文献
[1] UM_N32L40x 系列用户手册 V1.0.pdf
[2] DS_N32L40x 系列数据手册 V1.0.pdf
欢迎在博文下方留言评论,我们会及时回复您的问题。如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com
作者:John Ge / 葛龍
评论