st25r3916_led.h 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. /******************************************************************************
  2. * \attention
  3. *
  4. * <h2><center>&copy; COPYRIGHT 2020 STMicroelectronics</center></h2>
  5. *
  6. * Licensed under ST MYLIBERTY SOFTWARE LICENSE AGREEMENT (the "License");
  7. * You may not use this file except in compliance with the License.
  8. * You may obtain a copy of the License at:
  9. *
  10. * www.st.com/myliberty
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
  15. * AND SPECIFICALLY DISCLAIMING THE IMPLIED WARRANTIES OF MERCHANTABILITY,
  16. * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
  17. * See the License for the specific language governing permissions and
  18. * limitations under the License.
  19. *
  20. ******************************************************************************/
  21. /*
  22. * PROJECT: ST25R3916 firmware
  23. * Revision:
  24. * LANGUAGE: ISO C99
  25. */
  26. /*! \file
  27. *
  28. * \author Gustavo Patricio
  29. *
  30. * \brief ST25R3916 LEDs handling
  31. *
  32. *
  33. * \addtogroup RFAL
  34. * @{
  35. *
  36. * \addtogroup RFAL-HAL
  37. * \brief RFAL Hardware Abstraction Layer
  38. * @{
  39. *
  40. * \addtogroup ST25R3916
  41. * \brief RFAL ST25R3916 Driver
  42. * @{
  43. *
  44. * \addtogroup ST25R3916_LED
  45. * \brief RFAL ST25R3916 LED
  46. * @{
  47. *
  48. */
  49. #ifndef ST25R3916_LED_H
  50. #define ST25R3916_LED_H
  51. /*
  52. ******************************************************************************
  53. * INCLUDES
  54. ******************************************************************************
  55. */
  56. #include "platform.h"
  57. /*
  58. ******************************************************************************
  59. * GLOBAL DEFINES
  60. ******************************************************************************
  61. */
  62. /*
  63. ******************************************************************************
  64. * GLOBAL FUNCTION PROTOTYPES
  65. ******************************************************************************
  66. */
  67. /*!
  68. *****************************************************************************
  69. * \brief ST25R3916 LED Initialize
  70. *
  71. * This function initializes the LEDs that represent ST25R3916 activity
  72. *
  73. *****************************************************************************
  74. */
  75. void st25r3916ledInit(void);
  76. /*!
  77. *****************************************************************************
  78. * \brief ST25R3916 LED Event Interrupt
  79. *
  80. * This function should be called upon a ST25R3916 Interrupt, providing
  81. * the interrupt event with ST25R3916 irq flags to update LEDs
  82. *
  83. * \param[in] irqs: ST25R3916 irqs mask
  84. *
  85. *****************************************************************************
  86. */
  87. void st25r3916ledEvtIrq(uint32_t irqs);
  88. /*!
  89. *****************************************************************************
  90. * \brief ST25R3916 LED Event Write Register
  91. *
  92. * This function should be called on a ST25R3916 Write Register operation
  93. * providing the event with the register and value to update LEDs
  94. *
  95. * \param[in] reg: ST25R3916 register to be written
  96. * \param[in] val: value to be written on the register
  97. *
  98. *****************************************************************************
  99. */
  100. void st25r3916ledEvtWrReg(uint8_t reg, uint8_t val);
  101. /*!
  102. *****************************************************************************
  103. * \brief ST25R3916 LED Event Write Multiple Register
  104. *
  105. * This function should be called upon a ST25R3916 Write Multiple Registers,
  106. * providing the event with the registers and values to update LEDs
  107. *
  108. * \param[in] reg : ST25R3916 first register written
  109. * \param[in] vals: pointer to the values written
  110. * \param[in] len : number of registers written
  111. *
  112. *****************************************************************************
  113. */
  114. void st25r3916ledEvtWrMultiReg(uint8_t reg, const uint8_t* vals, uint8_t len);
  115. /*!
  116. *****************************************************************************
  117. * \brief ST25R3916 LED Event Direct Command
  118. *
  119. * This function should be called upon a ST25R3916 direct command, providing
  120. * the event with the command executed
  121. *
  122. * \param[in] cmd: ST25R3916 cmd executed
  123. *
  124. *****************************************************************************
  125. */
  126. void st25r3916ledEvtCmd(uint8_t cmd);
  127. #endif /* ST25R3916_LED_H */
  128. /**
  129. * @}
  130. *
  131. * @}
  132. *
  133. * @}
  134. *
  135. * @}
  136. */