一、环境介绍
1.软件环境:STM32CubeIDE
2.硬件环境:STM32F103C8T6最小系统板
二、模块源码
1.uart.h文件代码
/*
* uart.h
*
* Created on: 2024年4月11日
* Author: 废话文学创始人
*/
#ifndef INC_UART_H_
#define INC_UART_H_
#include <stm32f1xx_hal.h>
#include <stm32f1xx_hal_uart.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
extern UART_HandleTypeDef huart2;
#define HUART huart2 //串口号
#define TXBUFFERSIZE 50 //输出字符串的最大值
#define TIMEOUT 10 //超时时间
void Uart_Send_String(const char *format,...);
#endif /* INC_UART_H_ */
2.uart.c文件代码
/*
* uart.c
*
* Created on: 2024年4月11日
* Author: 废话文学创始人
*/
#include <uart.h>
uint8_t TXBuffer[TXBUFFERSIZE];//发送缓存区
//用法与prinf一样
void Uart_Send_String(const char *format,...)
{
va_list args; //定义一个va_list类型的变量,用来储存单个参数
va_start(args, format); //使args指向可变参数的第一个参数
vsprintf((char*)TXBuffer,