STM32串口UART实战-串口发送模板
一,CobuMX配置
首先,一定要先将选中固定UARTx引脚,让其变为橙色
然后再选择Asynchronous,让引脚变绿,因为,如果不先固定引脚,可能会将UARTx配置给其他引脚
这里还要开启串口接收中断,否则电脑发送数据时,数据无法有中断函数处理
二,建立UART_APP
生成的代码框架中有一个usart.c.h文件,定义了uart初始化函数
下面的函数配置的是uart的波特率等
这个则是配置uart的相关引脚
按照以前的套路创建uart_app.c.h文件
在.c文件中粘贴以下代码
int my_printf(UART_HandleTypeDef *huart, const char *format, ...)
{
char buffer[512]; // 临时存储格式化后的字符串
va_list arg; // 处理可变参数
int len; // 最终字符串长度
va_start(arg, format);
// 安全地格式化字符串到 buffer
len = vsnprintf(buffer, sizeof(buffer), format, arg);
va_end(arg);
// 通过 HAL 库发送 buffer 中的内容
HAL_UART_Transmit(huart, (uint8_t *)buffer, (uint16_t)len, 0xFF);
return len;
}
一定要头文件池子里引用数据需要用到的头文件
在上节的按键模板中加入串口发送函数
打开串口调试助手,选择ch340,波特率与CobeMX配置保持一致
按下按键,发送完成