#ifndef __IOUSART_H_ #define __IOUSART_H_ #include "stm32f4xx_hal.h" #include "gpio.h" //#include "sys.h" //#include "delay.h" //定义通信波特率 #define BaudRate_9600 104 //1000000us/9600=104.1666 发送1个位所需要的时间 //GPIO TX脚宏定义 #define iouart1_TXD(n) if(n) HAL_GPIO_WritePin(IO_TX_GPIO_Port, IO_TX_Pin, GPIO_PIN_SET); \ else HAL_GPIO_WritePin(IO_TX_GPIO_Port, IO_TX_Pin, GPIO_PIN_RESET); //GPIO RX脚宏定义 #define iouart1_RXD() HAL_GPIO_ReadPin(IO_RX_GPIO_Port, IO_RX_Pin) #define SUartLength 1024 //模拟串口缓冲区长度 enum{ COM_START_BIT, COM_D0_BIT, COM_D1_BIT, COM_D2_BIT, COM_D3_BIT, COM_D4_BIT, COM_D5_BIT, COM_D6_BIT, COM_D7_BIT, COM_STOP_BIT, }; void iouart1_delayUs(volatile uint32_t nTime); void iouart1_delayUs_104(void); void S_Uart_Send_Buff(uint8_t *buff,uint8_t length); void S_Uart_Send_Str(uint8_t *str); void S_Uart_One_Tx(uint8_t Data); uint8_t S_Uart_Rx_Handler(uint8_t *buf,uint8_t *length); void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin); void iousart_tim_cb(void); void SendChar(uint8_t t); #endif /* __IOUSART_H_ */