uart.h 919 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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 hTest huart2
  13. #define QUEUE_BUFFER_LENGTH 2048
  14. typedef struct
  15. {
  16. int head, tail, data;
  17. uint8_t Buffer[QUEUE_BUFFER_LENGTH];
  18. }UARTQUEUE, *pUARTQUEUE;
  19. typedef struct {
  20. uint8_t buffer[QUEUE_BUFFER_LENGTH];
  21. volatile uint16_t input_p;
  22. volatile uint16_t output_p;
  23. } uart_hal_tx_type;
  24. extern UART_HandleTypeDef huart1;
  25. extern UART_HandleTypeDef huart2;
  26. extern IWDG_HandleTypeDef hiwdg;
  27. extern UARTQUEUE TerminalQueue;
  28. void PutDataToUartQueue(UART_HandleTypeDef *huart, uint8_t data);
  29. void InitUartQueue(pUARTQUEUE pQueue);
  30. void GetDataFromUartQueue(UART_HandleTypeDef *huart);
  31. bool Get_UartRcv(void);
  32. void Set_UartRcv(bool);
  33. void Uart1_Data_Send(uint8_t* data,uint16_t size);
  34. void Uart_Check(void);
  35. #endif /* UART_H_ */