简介
本文内容基于 LKS453 对 UART 特性、参数配置进行了介绍,并使用 uart_MCU_send_data Demo 程序进行 Handson 实验,实现了 MCU UART 将 01-06 数据发送到串口助手上,并通过串口打印出来。
硬件平台:凌鸥创芯-LKS_EVB_MCU453_V2.0 板,WPI-LPCLINK2 Debugger_V1.0 板
软件平台:Keil
一、UART特性:

▲ 图 1 来自LKS32MC45x_User_Manual_v1.47
LKS32MC453 有 3 路 UART,全双工工作,支持 8/9 位数据位、1/2 停止位、奇/偶/无校验模式,带 1 字节 ,发送缓存、1 字节接收缓存,支持 Multi-drop Slave/Master 模式,波特率支持 300~115200。
二、程序分析
2.1 Demo函数概述
- main 函数:程序对 UART 进行了初始化,发送数据 01-06。
|
int main(void) { u8 num = 0; uart_init(); //UART 初始化 for (uint8_t i=0;i<6;i++) // 循环6次 { num++; // 数据自加 UART_DelaySendOver(UART1); // 发送数据前需要等待之前的数据发送完成 UART_SendData(UART1, num); //发送数据 } } |
uart_init(); 函数: 程序初始化 UART 时钟,设置 UART 波特率为 115200,UART TX/RXGPIO 的复用。
|
void uart_init() { UART_InitTypeDef uart1_config; GPIO_InitTypeDef uart1_gpio_config.
uart1_config.BAUDRATE = 115200; // UART波特率为115200 UART_Init(UART1, &uart1_config); //是能 UART 时钟,配置 UART 波特率为115200
uart1_gpio_config.GPIO_Pin = GPIO_Pin_6; // TX GPIO PIN uart1_gpio_config.GPIO_Mode = GPIO_Mode_OUT; // 输出模式 uart1_gpio_config.GPIO_PuPd = GPIO_PuPd_NOPULL; // 无上下拉 uart1_gpio_config.GPIO_PODEna = DISABLE; //不使能开漏 uart1_gpio_config.GPIO_PFLT = DISABLE; // 不使能滤波 GPIO_Init(GPIO2, &uart1_gpio_config); // UART TX GPIO参数配置,并使能GPIO2时钟
GPIO_StructInit(&uart1_gpio_config); uart1_gpio_config.GPIO_Pin = GPIO_Pin_5; // RX GPIO PIN uart1_gpio_config.GPIO_Mode = GPIO_Mode_IN; //输入模式 uart1_gpio_config.GPIO_PuPd = GPIO_PuPd_NOPULL; //无上下拉 uart1_gpio_config.GPIO_PODEna = DISABLE; //不使能开漏 uart1_gpio_config.GPIO_PFLT = DISABLE; // 不使能滤波 GPIO_Init(GPIO2, &uart1_gpio_config); // UART RX GPIO参数配置,并使能GPIO2时钟
GPIO_PinAFConfig(GPIO2, GPIO_PinSource_5, GPIO_AF_UART); //GPIO2 的第5 PIN,复用为 UART RX GPIO GPIO_PinAFConfig(GPIO2, GPIO_PinSource_6, GPIO_AF_UART); //GPIO2 的第6 PIN,复用为 UART TX GPIO } |
UART_DelaySendOver(UART1); 函数: 发送数据前需要等待之前的数据发送完成。
UART_SendData(UART1, num); 函数:发送 32 位数据 n。
|
void UART_SendData(UART_TypeDef *UARTx, u32 n) { UARTx->BUFF = n; } |
三、实验现象
3.1 操作环境:如图2 所示,用 WPI-LPCLINK2 Debugger_V1.0 板连接凌鸥创-LKS_EVB_MCU453_V2.0 板。WPI-LPCLINK2 Debugger_V1.0 板使用 CMSIS-DAP Debugger 的 Debug 方式对 LKS453 MCU 进行程序烧录。
▲ 图 2 WPI-LPCLINK2 Debugger_V1.0 板连接 LKS_EVB_MCU453_V2.0 板
3.2 串口助手接收到数据 01-06:

▲ 图 3 来自开源串口助手 开源电子网: www.openedv.com
四、总结
综上基于 LKS453 对 UART 特性、参数配置进行了介绍,并通过 Handson 实现了 MCU UART 将 01-06 数据发送到串口助手上,并通过串口助手打印出来。以上内容为 LKS453 MCU UART特性、参数配置简介,如果有问题,可以发送邮件 atu.sh@wpi-group.com 与我们联系。
五、参考文献
(1) LKS32MC45x_User_Manual_v1.47
(2) LKS32MC45x_Datasheet_v1.53
(3) 串口助手:XCOM V2.0 (开源电子网: www.openedv.com)
(4) SDK:LKS32MC45x_PeripDemo_v2.5
(5) 原理图:LKS_EVB_MCU453_V2.0.SchDoc
欢迎在博文下方留言评论,我们会及时回复您的问题。
如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com 作者:扎根地下
更多资讯,请扫码关注我们!
