uart.h 803 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * uart.h
  3. *
  4. * Created on: 2019. 5. 27.
  5. * Author: parkyj
  6. */
  7. #ifndef UART_H_
  8. #define UART_H_
  9. #include <stdbool.h>
  10. #include "main.h"
  11. #define hTerminal huart1
  12. #define QUEUE_BUFFER_LENGTH 1024
  13. typedef struct
  14. {
  15. int head, tail, data;
  16. uint8_t Buffer[QUEUE_BUFFER_LENGTH];
  17. }UARTQUEUE, *pUARTQUEUE;
  18. typedef struct {
  19. uint8_t buffer[QUEUE_BUFFER_LENGTH];
  20. volatile uint16_t input_p;
  21. volatile uint16_t output_p;
  22. } uart_hal_tx_type;
  23. extern UART_HandleTypeDef huart1;
  24. extern UARTQUEUE TerminalQueue;
  25. void PutDataToUartQueue(UART_HandleTypeDef *huart, uint8_t data);
  26. void InitUartQueue(pUARTQUEUE pQueue);
  27. void GetDataFromUartQueue(UART_HandleTypeDef *huart);
  28. bool Get_UartRcv(void);
  29. void Set_UartRcv(bool);
  30. void Uart1_Data_Send(uint8_t* data,uint8_t size);
  31. #endif /* UART_H_ */