pan3029_port.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*******************************************************************************
  2. * @note Copyright (C) 2023 Shanghai Panchip Microelectronics Co., Ltd. All rights reserved.
  3. *
  4. * @file radio.c
  5. * @brief
  6. *
  7. * @history - V1.0, 2023-05-21
  8. *******************************************************************************/
  9. #ifndef __pan3029_PORT_H_
  10. #define __pan3029_PORT_H_
  11. #include "stdio.h"
  12. #include "stdint.h"
  13. #include "stdlib.h"
  14. #include "stdbool.h"
  15. #include "math.h"
  16. #include "pan3029.h"
  17. #include "radio.h"
  18. #include "myRadio_gpio.h"
  19. #define SPI_WRITE_CHECK 1
  20. #define MODULE_GPIO_TX 0
  21. #define MODULE_GPIO_RX 10
  22. #define MODULE_GPIO_TCXO 3
  23. #define MODULE_GPIO_CAD_IRQ 11
  24. typedef struct {
  25. void (*antenna_init)(void);
  26. void (*tcxo_init)(void);
  27. void (*set_tx)(void);
  28. void (*set_rx)(void);
  29. void (*antenna_close)(void);
  30. void (*tcxo_close)(void);
  31. uint8_t (*spi_readwrite)(uint8_t tx_data);
  32. void (*spi_cs_high)(void);
  33. void (*spi_cs_low)(void);
  34. void (*delayms)(uint32_t time);
  35. void (*delayus)(uint32_t time);
  36. }rf_port_t;
  37. extern rf_port_t rf_port;
  38. uint8_t spi_readwritebyte(uint8_t tx_data);
  39. void spi_cs_set_high(void);
  40. void spi_cs_set_low(void);
  41. void rf_delay_ms(uint32_t time);
  42. void rf_delay_us(uint32_t time);
  43. void rf_antenna_init(void);
  44. void rf_tcxo_init(void);
  45. void rf_tcxo_close(void);
  46. void rf_antenna_rx(void);
  47. void rf_antenna_tx(void);
  48. void rf_antenna_close(void);
  49. #endif