A7169_hal.h 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #ifndef __A7169_hal_H__
  2. #define __A7169_hal_H__
  3. #include "stdbool.h"
  4. #include "stdint.h"
  5. #include "myRadio_gpio.h"
  6. typedef struct
  7. {
  8. uint16_t *config;
  9. uint16_t *pageA;
  10. uint16_t *pageB;
  11. }A7169Config_ts;
  12. extern A7169Config_ts A7169ConfigBuffer;
  13. void A7169_delayMs(uint32_t time);
  14. void A7169_delayUs(uint32_t time);
  15. /*********************************************************************
  16. ** Strobe Command
  17. *********************************************************************/
  18. void StrobeCMD(uint8_t cmd);
  19. /************************************************************************
  20. ** A7169_WriteReg
  21. ************************************************************************/
  22. void A7169_WriteReg(uint8_t address, uint16_t dataWord);
  23. /************************************************************************
  24. ** A7169_ReadReg
  25. ************************************************************************/
  26. uint16_t A7169_ReadReg(uint8_t address);
  27. /************************************************************************
  28. ** A7169_WritePageA
  29. ************************************************************************/
  30. void A7169_WritePageA(uint8_t address, uint16_t dataWord);
  31. /************************************************************************
  32. ** A7169_ReadPageA
  33. ************************************************************************/
  34. uint16_t A7169_ReadPageA(uint8_t address);
  35. /************************************************************************
  36. ** A7169_WritePageB
  37. ************************************************************************/
  38. void A7169_WritePageB(uint8_t address, uint16_t dataWord);
  39. /************************************************************************
  40. ** A7169_ReadPageB
  41. ************************************************************************/
  42. uint16_t A7169_ReadPageB(uint8_t address);
  43. /*********************************************************************
  44. ** A7169_POR
  45. *********************************************************************/
  46. void A7169_POR(void);
  47. /*********************************************************************
  48. ** InitRF
  49. *********************************************************************/
  50. uint8_t InitRF(void);
  51. /*********************************************************************
  52. ** A7169_Config
  53. *********************************************************************/
  54. uint8_t A7169_Config(void);
  55. /************************************************************************
  56. ** WriteID
  57. ************************************************************************/
  58. uint8_t A7169_WriteID(void);
  59. /*********************************************************************
  60. ** A7169_Cal
  61. *********************************************************************/
  62. uint8_t A7169_Cal(void);
  63. /*********************************************************************
  64. ** A7169_WriteFIFO
  65. *********************************************************************/
  66. void A7169_WriteFIFO(void);
  67. /*********************************************************************
  68. ** RxPacket
  69. *********************************************************************/
  70. void RxPacket(void);
  71. void RxPacket_ReadFifo(uint8_t *fuffer, uint16_t len);
  72. /*********************************************************************
  73. ** Err_State
  74. *********************************************************************/
  75. void Err_State(void);
  76. /*********************************************************************
  77. ** entry_deep_sleep_mode
  78. *********************************************************************/
  79. void entry_deep_sleep_mode(void);
  80. /*********************************************************************
  81. ** wake_up_from_deep_sleep_mode
  82. *********************************************************************/
  83. void wake_up_from_deep_sleep_mode(void);
  84. /*********************************************************************
  85. ** BODF_Detect
  86. *********************************************************************/
  87. uint8_t BODF_Detect(void);
  88. void A7169_FifoWrite(uint8_t *src, uint16_t len);
  89. void A7169_SetConfig(A7169Config_ts config);
  90. #endif //