#ifndef _USART_H #define _USART_H #include "sys.h" #include "stdio.h" ////////////////////////////////////////////////////////////////////////////////// //本程序只供学习使用,未经作者许可,不得用于其它任何用途 //ALIENTEK STM32F407开发板 //串口1初始化 //正点原子@ALIENTEK //技术论坛:www.openedv.csom //修改日期:2017/4/6 //版本:V1.0 //版权所有,盗版必究。 //Copyright(C) 正点原子 2009-2019 //All rights reserved //******************************************************************************** //V1.0修改说明 ////////////////////////////////////////////////////////////////////////////////// #define USART2_REC_LEN 200 //定义最大接收字节数 200 #define USART3_REC_LEN 200 //定义最大接收字节数 200 #define EN_USART3_RX 1 //使能(1)/禁止(0)串口1接收 #define PRINTF(...) Usart_TX_Set(1);printf(__VA_ARGS__);Usart_TX_Set(0); #define UART_RX_STATE_READY 0 #define UART_RX_STATE_START 1 #define UART_RX_STATE_DEAL 2 // extern u8 USART2_RX_BUF[USART2_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.末字节为换行符 extern u16 USART2_RX_STA; //接收状态标记 extern u8 USART3_RX_BUF[USART3_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.末字节为换行符 extern u16 USART3_RX_STA; //接收状态标记 extern UART_HandleTypeDef UART2_Handler; //UART句柄 extern UART_HandleTypeDef UART3_Handler; //UART句柄 //extern u8 *str; #define RXBUFFERSIZE 1 //缓存大小 extern u8 usart3_aRxBuffer[RXBUFFERSIZE];//HAL库USART接收Buffer //如果想串口中断接收,请不要注释以下宏定义 extern void uart2_init(u32 bound); extern void uart3_init(u32 bound); extern void Usart_Send_Data(u8 *buf,u8 len); extern void Usart2_Send_Data(u8 *buf, u8 len); extern void Usart_Send_Str_Data(char *str); extern void Usart_TX_Set(uint8_t Ren); #endif