uart.h 733 B

1234567891011121314151617181920212223242526272829303132333435363738
  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 "main.h"
  10. #define hTerminal huart1
  11. #define QUEUE_BUFFER_LENGTH 1024
  12. typedef struct
  13. {
  14. int head, tail, data;
  15. uint8_t Buffer[QUEUE_BUFFER_LENGTH];
  16. }UARTQUEUE, *pUARTQUEUE;
  17. typedef struct {
  18. uint8_t buffer[QUEUE_BUFFER_LENGTH];
  19. volatile uint16_t input_p;
  20. volatile uint16_t output_p;
  21. } uart_hal_tx_type;
  22. extern UART_HandleTypeDef huart1;
  23. extern UARTQUEUE TerminalQueue;
  24. void PutDataToUartQueue(UART_HandleTypeDef *huart, uint8_t data);
  25. void InitUartQueue(pUARTQUEUE pQueue);
  26. void GetDataFromUartQueue(UART_HandleTypeDef *huart);
  27. bool Get_UartRcv(void);
  28. void Set_UartRcv(bool);
  29. #endif /* UART_H_ */