90 lines
3.0 KiB
C
90 lines
3.0 KiB
C
#include "include.h"
|
||
#include "api.h"
|
||
|
||
|
||
#define BT_PROFILE (PROF_A2DP*BT_A2DP_EN) | (PROF_HFP*BT_HFP_EN) | (PROF_SPP*BT_SPP_EN) | (PROF_HID*BT_HID_EN) | (PROF_HSP*BT_HSP_EN)
|
||
#define BT_CODEC (CODEC_SBC) | (CODEC_MSBC * BT_HFP_MSBC_EN) | (CODEC_PLC * BT_PLC_EN)
|
||
#define HFP_FEATURE (HFP_BAT_REPORT*BT_HFP_BAT_REPORT_EN) | (HFP_INBAND_RING_RONE*BT_HFP_INBAND_RING_EN) | (HFP_CALL_PRIVATE*BT_HFP_CALL_PRIVATE_FORCE_EN) | (HFP_RING_NUMBER_EN*BT_HFP_RING_NUMBER_EN)
|
||
#define A2DP_FEATURE (A2DP_VOL_CTRL*BT_A2DP_VOL_CTRL_EN) | (A2DP_RESTORE_PLAYING) | (A2DP_AVDTP_DELAY_REPORT*BT_AVDTP_DELAY_REPORT_EN)
|
||
|
||
|
||
///baseband
|
||
uint8_t cfg_bt_rf_def_txpwr = 0; //降低预置参数RF发射功率,单位1dbm
|
||
uint8_t cfg_bt_page_inq_txpwr = 0; //降低回连和搜索RF发射功率,单位2dbm
|
||
uint8_t cfg_bt_sniff_clk_sel = 2; //2:31.25KHz 晶振, 3:31.25KHz RC
|
||
|
||
///stack
|
||
uint8_t cfg_bt_work_mode = WORK_MODE;
|
||
uint8_t cfg_bt_max_acl_link = BT_2ACL_EN+1;
|
||
|
||
bool cfg_bt_dual_mode = BT_DUAL_MODE_EN;
|
||
bool cfg_bt_scan_ctrl_mode = BT_DISCOVER_CTRL_EN;
|
||
bool cfg_bt_simple_pair_mode = BT_SIMPLE_PAIR_EN;
|
||
|
||
uint16_t cfg_bt_support_profile = BT_PROFILE;
|
||
uint16_t cfg_bt_support_codec = BT_CODEC;
|
||
|
||
uint8_t cfg_bt_a2dp_feature = A2DP_FEATURE;
|
||
uint8_t cfg_bt_hfp_feature = HFP_FEATURE;
|
||
uint8_t cfg_bt_hid_type = BT_HID_TYPE;
|
||
|
||
uint16_t cfg_bt_def_connect_times = BT_POWER_UP_RECONNECT_TIMES; //默认回连重试次数
|
||
uint16_t cfg_bt_sup_to_connect_times = BT_TIME_OUT_RECONNECT_TIMES; //超时断线回连重试次数
|
||
|
||
bool cfg_bt_voip_reject_en = BT_VOIP_REJECT_EN;
|
||
|
||
const char *bt_get_local_name(void)
|
||
{
|
||
return xcfg_cb.bt_name;
|
||
}
|
||
|
||
void bt_get_local_bd_addr(u8 *addr)
|
||
{
|
||
#if LE_SM_SC_EN
|
||
memcpy(addr, xcfg_cb.bt_addr, 6);
|
||
if (!app_phone_type_get()) {
|
||
addr[5] ^= 0x55;
|
||
}
|
||
#elif BT_LOCAL_ADDR
|
||
param_random_key_read(&addr[2]);
|
||
addr[0] = 0x41;
|
||
addr[1] = 0x42;
|
||
#else
|
||
memcpy(addr, xcfg_cb.bt_addr, 6);
|
||
#endif
|
||
}
|
||
|
||
//void bt_get_link_info(void *buf, u16 addr, u16 size)
|
||
//{
|
||
// //printf("bt_read: %04x,%04x, %08lx\n", addr, size, BT_CM_PAGE(addr));
|
||
// cm_read(buf, BT_CM_PAGE(addr), size);
|
||
// //print_r(buf, size);
|
||
//}
|
||
//
|
||
//void bt_put_link_info(void *buf, u16 addr, u16 size)
|
||
//{
|
||
// //printf("bt_write: %04x,%04x, %08lx\n", addr, size, BT_CM_PAGE(addr));
|
||
// //print_r(buf, size);
|
||
// cm_write(buf, BT_CM_PAGE(addr), size);
|
||
//}
|
||
//
|
||
//void bt_get_ext_link_info(void *buf, u16 addr, u16 size)
|
||
//{
|
||
// //printf("bt_read: %04x,%04x, %08lx\n", addr, size, BT_CM_PAGE(addr));
|
||
// cm_read(buf, EXT_CM_PAGE(addr), size);
|
||
// //print_r(buf, size);
|
||
//}
|
||
//
|
||
//void bt_put_ext_link_info(void *buf, u16 addr, u16 size)
|
||
//{
|
||
// //printf("bt_write: %04x,%04x, %08lx\n", addr, size, BT_CM_PAGE(addr));
|
||
// //print_r(buf, size);
|
||
// cm_write(buf, EXT_CM_PAGE(addr), size);
|
||
//}
|
||
|
||
//void bt_sync_link_info(void)
|
||
//{
|
||
// cm_sync();
|
||
//}
|
||
|