UART函数

UART相关底层API函数使用说明。

头文件的引入

#include  "uart.h"

串口初始化(常用串口参数初始化)

//该函数用于常用参数的串口初始化,波特兰115200,全双工模式,无校验位
void USART1_Init(void);
void USART2_Init(void);
void USART3_Init(void);
void USART6_Init(void);
void UART7_Init(void);
void UART8_Init(void);

串口初始化(自定义串口参数初始化)

//该函数用于常用参数的串口初始化
//BaudRate为串口波特率设置
//Usart_Mode为串口收发模式,可用值:Usart_Rx,Usart_Tx,,Usart_TxRx
//Usart_Parity为奇偶校验位设置,可用值:Usart_Parity_No,Usart_Parity_Even,Usart_Parity_Odd
void USART1_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);
void USART2_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);
void USART3_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);
void USART6_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);
void UART7_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);
void UART8_Config(int BaudRate,Usart_Mode_t Usart_Mode,Usart_Parity_t Usart_Parity);

单字节数据发送

//data为需要发送的无符号8位二进制整型数据
void USART1_Write(uint8_t data);
void USART2_Write(uint8_t data);
void USART3_Write(uint8_t data);
void USART6_Write(uint8_t data);
void UART7_Write(uint8_t data);
void UART8_Write(uint8_t data);

数据发送

void USART1_Write_Data(char *fmt, ...);
void USART2_Write_Data(char *fmt, ...);
void USART3_Write_Data(char *fmt, ...);
void USART6_Write_Data(char *fmt, ...);
void UART7_Write_Data(char *fmt, ...);
void UART8_Write_Data(char *fmt, ...);

读取数据

void USART1_Read_Data();
void USART2_Read_Data();
void USART3_Read_Data();
void USART6_Read_Data();
void UART7_Read_Data();
void UART8_Read_Data();

UART串口回调

//UART串口通讯协议回调函数,参数对应串口通讯协议参数
void UART_Serial_Callback(char *type, int channel, char *data){}

示例

//通过串口每隔500ms向电脑打印数据
#include "uart.h"//引入头文件 "uart.h"
void user2_main(void)
{
	//自定义初始化USART1
	USART1_Config(115200,Usart_TxRx,Usart_Parity_No);
	while(1)
	{
		UART8_Write_Data("Hello World \r\n");//打印“Hello World”到电脑上
		delay_ms(500);//每隔500ms打印一次“Hello World”到电脑上
	}
}