WXK
2025-02-11 e328ebef585cea2351b37117b2d5ac4978ecd3c0
keil/include/components/uwb/inc/lib_fira.h
@@ -63,6 +63,11 @@
#define SLOT_REPORT 2
#define SLOT_RESULT 3
#define RESPONSE_SLOT_IDX(x, n) (2 + (x))
#define FINAL_SLOT_IDX(x, n) (2 + (n))
#define REPORT_SLOT_IDX(x, n) (3 + (n))
#define RESULT_SLOT_IDX(x, n) (4 + (n) + (x))
/** STS config definition */
enum FIRA_STS_CFG_T
{
@@ -155,10 +160,10 @@
    uint32_t phy_sts_index;
    uint32_t tof;
    uint32_t uwb_period_prefetch_time;
    uint32_t uwb_evt_prefetch_time;
    uint32_t uwb_rx_open_in_advance;
    uint32_t uwb_rx_window;
    uint32_t uwb_period_prefetch_time;
    uint32_t uwb_rx_open_in_advance_wakeup;
    uint32_t uwb_rx_window_wakeup;
@@ -173,8 +178,9 @@
    uint8_t responder_slot_idx[4];
    uint32_t responder_response_flag;
    uint16_t result_flag; // responder_idx || status (1: update, 2: complete)
    uint8_t rcm_flag;
    uint8_t repeat;
    uint16_t repeat;      // audio
    uint16_t controller_addr;
    uint16_t initiator_addr;
    uint16_t slots_per_block;
    uint8_t count;
    uint8_t count_last;
@@ -272,10 +278,9 @@
void ranging_peer_addr_set(uint16_t short_addr);
/**
 * @brief Get initiator short address.
 * @return short address of initiator
 * @brief Clear responder list.
 */
uint16_t ranging_initiator_addr_get(void);
void ranging_responder_list_clr(void);
/**
 * @brief Add responder device into responder device list for one-to-many case.
@@ -283,11 +288,6 @@
 * @return 1: successful, 0: fail
 */
uint8_t ranging_responder_addr_add(uint16_t addr);
/**
 * @brief Clear responder list.
 */
void ranging_responder_list_clr(void);
/**
 * @brief Dynamic Update of Multicast List for Controlees
@@ -306,12 +306,43 @@
uint16_t ranging_responder_addr_get(uint8_t idx);
/**
 * @brief Get responder index.
 * @param[in] addr             Responder device address
 * @return index of responder
 */
uint8_t ranging_responder_idx_get(uint16_t addr);
/**
 * @brief Get responder devices number.
 * @return number of responder
 */
uint8_t ranging_responder_num_get(void);
/**
 * @brief Set initiator short address.
 * @param[in] short_addr          Device short address
 */
void ranging_initiator_addr_set(uint16_t short_addr);
/**
 * @brief Get initiator short address.
 * @return short address of initiator
 */
uint16_t ranging_initiator_addr_get(void);
/**
 * @brief Set controller short address.
 * @param[in] short_addr          Device short address
 */
void ranging_controller_addr_set(uint16_t short_addr);
/**
 * @brief Get controller short address.
 * @return short address of controller
 */
uint16_t ranging_controller_addr_get(void);
/**
 * @brief Update ranging slot index, based on this informantion to generate STS or encryted packet every slot.
 * @param[in] slot_idx              Slot index
 */