Classes | Typedefs | Enumerations | Functions
ble.h File Reference

include all ble sdk header files More...

`#include "ble_att.h"`
`#include "ble_error.h"`
`#include "ble_gapc.h"`
`#include "ble_gapm.h"`
`#include "ble_gatt.h"`
`#include "ble_gattc.h"`
`#include "ble_gatts.h"`
`#include "ble_l2cap.h"`
`#include "ble_prf.h"`
`#include "ble_sec.h"`
`#include "ble_event.h"`
`#include <stdio.h>`

Go to the source code of this file.

## Classes
struct | stack_heaps_table_t
| The table contains the pointers to four arrays which are used as heap memory by BLE stack in ROM. The size of four arrays depends on the number of connections and the number of attributes of profiles. More...
struct | ble_hci_rx_channel_t
| BLE HCI RX Channel (Host send packet to controller). More...
struct | ble_ext_llcp_cb_func_t
| Extended LLCP. More...
struct | dbg_ble_llcp_info_entry_s

## Typedefs
typedef void(* | aes_result_cb) (uint8_t status, const uint8_t *aes_res, uint32_t src_info)
| Call back definition of the function that can handle result of an AES based algorithm. More...
typedef void(* | ble_hci_host_recv_cb_t) (uint8_t *p_data, uint16_t length)
| Receive controller pachet callback type. More...
typedef struct dbg_ble_llcp_info_entry_s | dbg_ble_llcp_info_entry_t

## Enumerations
enum | ble_rf_tx_mode_t { BLE_RF_TX_MODE_INVALID = 0, BLE_RF_TX_MODE_LP_MODE = 1, BLE_RF_TX_MODE_HP_MODE = 2 }
| RF TX mode. More...
enum | ble_rf_test_type_t { BLE_RF_TEST_TYPE_MODEM = 0, BLE_RF_TEST_TYPE_SINGLE_CARRIER = 1 }
| RF TX type. More...
enum | ble_rf_match_circuit_t { BLE_RF_5TH_MATCH_CIRCUIT = 0, BLE_RF_3TH_MATCH_CIRCUIT = 1 }
| The resistance value (ohm) of the RF match circuit. More...

## Functions
void | ble_stack_init (ble_evt_handler_t evt_handler, stack_heaps_table_t *p_heaps_table)
| Initialize BLE Stack. More...
void | ble_stack_controller_init (stack_heaps_table_t *p_heaps_table)
| Initialize BLE Stack controller. More...
void | ble_common_env_init_for_controller (void)
| Initialize common patch function in BLE Stack controller. More...
sdk_err_t | ble_hci_init (ble_hci_rx_channel_t *p_rx_channel, ble_hci_host_recv_cb_t host_recv_cb)
| Initialize ble hci adapter module. More...
sdk_err_t | ble_hci_host_packet_send (uint8_t *p_data, uint16_t length)
| BLE HCI adapter host send packet. More...
uint16_t | ble_hci_rx_channel_surplus_space_get (void)
| Get surplus space of controller receive channel. More...
void | ble_idle_time_notify_cb_register (void(*callback)(uint32_t hs))
| Register BLE idle time notification callback function. More...
void | ble_activity_start_notify_cb_register (void(*callback)(ble_gap_actv_role_t e_role, uint8_t index))
| Register BLE activity start notification callback function. More...
void | ble_activity_end_notify_cb_register (void(*callback)(ble_gap_actv_role_t e_role, uint8_t index))
| Register BLE activity end notification callback function. More...
void | ble_rf_tx_mode_set (ble_rf_tx_mode_t rf_tx_mode)
| Change the RF TX mode of LP or HP. More...
ble_rf_tx_mode_t | ble_rf_tx_mode_get (void)
| Get the RF TX mode of LP or ULP. More...
sdk_err_t | adv_rf_phy_freq_modify (uint16_t ch37_mhz, uint16_t ch38_mhz, uint16_t ch39_mhz)
| custom the advertising frequency More...
uint8_t | ble_ext_llcp_send (uint16_t conn_idx, uint8_t *param, uint8_t ext_opcode)
| Start a extended llcp procedure. More...
uint8_t | ble_ext_llcp_cb_reg (struct ble_ext_llcp_cb_func_t *func)
| Registered the extended llcp procedure callback. More...
void | ble_aes_encrypt (const uint8_t *key, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES encryption - result within callback. More...
void | ble_aes_decrypt (const uint8_t *key, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES dencryption - result within callback. More...
void | ble_aes_ecb_encrypt (const uint8_t *key, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES ecb encryption - result within callback. More...
void | ble_aes_ecb_decrypt (const uint8_t *key, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES ecb dencryption - result within callback. More...
void | ble_aes_cbc_encrypt (const uint8_t *key, const uint8_t *iv, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES cbc encryption - result within callback. More...
void | ble_aes_cbc_decrypt (const uint8_t *key, const uint8_t *iv, const uint8_t *val, aes_result_cb res_cb, uint32_t src_info)
| Perform an AES cbc dencryption - result within callback. More...
void | ble_dtm_tx_test_start (uint8_t tx_channel, uint8_t data_len, uint8_t pkt_type, uint8_t tx_phy, uint8_t test_type, int8_t tx_power)
| Start dtm tx test. More...
void | ble_dtm_rx_test_start (uint8_t rx_channel, uint8_t rx_phy)
| Start dtm rx test. More...
void | ble_dtm_tx_test_end (uint8_t test_type)
| End dtm tx test. More...
void | ble_dtm_rx_test_end (void)
| End dtm rx test. More...
uint8_t | dbg_ble_stack_llcp_info_buf_register (uint8_t conidx, dbg_ble_llcp_info_entry_t *p_entry_buf, uint8_t entry_num)
| register llcp debug info buffer More...

## Detailed Description

include all ble sdk header files

Attention
  #####Copyright (c) 2019 GOODIX All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of GOODIX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file ble.h.