Uart.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef __USART_H
  2. #define __USART_H
  3. #include "stdio.h"
  4. #include "includes.h"
  5. #define RS485_GPIO_RCU RCU_GPIOA
  6. #define RS485_GPIOx GPIOA
  7. #define RS485_GPIO_PIN_TX GPIO_PIN_2
  8. #define RS485_GPIO_PIN_RX GPIO_PIN_3
  9. #define RS485_GPIO_PIN_CTL GPIO_PIN_4
  10. #define RS483_USART_RCU RCU_USART1
  11. #define RS485_USARTx USART1
  12. #define RS485_USART_IRQ USART1_IRQn
  13. #define RS485_DMA_RCU RCU_DMA0
  14. #define RS485_DMAx DMA0
  15. #define RS485_DMA_CH_TX DMA_CH6
  16. #define RS485_DMA_CH_RX DMA_CH5
  17. #define RS485_DMA_TX_IRQ DMA0_Channel6_IRQn
  18. ////////////////////////////////////////////////////////////////////
  19. #define USART0_TX_SIZE 256
  20. #define USART0_RX_SIZE 256
  21. extern uint8_t usart0TX_Buffer[USART0_TX_SIZE];
  22. extern uint8_t usart0RX_Buffer[USART0_RX_SIZE];
  23. extern void dma_init_uart0(void);
  24. extern void usart0_config(void);
  25. #define RS485_RX() gpio_bit_reset(RS485_GPIOx, RS485_GPIO_PIN_CTL)
  26. #define RS485_TX() gpio_bit_set(RS485_GPIOx, RS485_GPIO_PIN_CTL)
  27. #define USART3_TX_SIZE 256
  28. #define USART3_RX_SIZE 256
  29. extern uint8_t usart485TX_Buffer[USART3_TX_SIZE];
  30. extern uint8_t usart485RX_Buffer[USART3_RX_SIZE];
  31. extern void dam_init_uart_485(void);
  32. extern void usart_485_dma_init(void);
  33. extern void usart_tx_dma_send(uint32_t usart_periph,uint8_t* data_buffer,uint16_t length);
  34. extern void data_dump(const char *name, uint8_t *data, uint16_t length);
  35. ///////////////////////////////////////////////////////////////////
  36. #endif