📄 hf_tester.h
字号:
#ifndef HF_TESTER_H_
#define HF_TESTER_H_
#include "global.h"
#include "gap_ui.h"
typedef void (PAIR_CBK)(UCHAR *bd_addr, UCHAR event, const UCHAR *param);
typedef void (EVENT_CBK)(UCHAR *bd_addr, UCHAR event, const UCHAR *param, WORD param_len);
/*security mode, parameter for function HFTesterInit*/
#define SECURITY_MODE_1 SM_MODE_1
#define SECURITY_MODE_3 SM_MODE_3
/*sco pack type, parameter for function SetupScoConn*/
#define SCO_PKT_TYPE_HV1 SCO_PKT_HV1
#define SCO_PKT_TYPE_HV2 SCO_PKT_HV2
#define SCO_PKT_TYPE_HV3 SCO_PKT_HV3
/*event code for the pair event processing callback function*/
#define PIN_CODE_REQ_IND 0x01 /*PIN code request indication*/
#define LINK_KEY_REQ_IND 0x02 /*Link Key request indication*/
#define LINK_KEY_NOTIF_IND 0x03 /*Link Key notification indication*/
/*event code for the event processing callback function*/
#define HF_ANSWER_INCOMING_CALL 0x01 /*HF answer the incoming call*/
#define HF_CANCEL_CALL 0x02 /*HF cancel the incoming call or the outgoing call or the ongoing call*/
#define VOICE_RECOG_ACTIVATE_REQ 0x03 /*HF request AG to activate the voice recognition procedure*/
#define VOICE_RECOG_DEACTIVATE_REQ 0x04 /*HF request AG to deactivate the voice recognition procedure*/
#define HF_DIAL_IND 0x05 /*HF initiated phone number dial*/
#define HF_MEM_DIAL_IND 0x06 /*HF initiated memory dial*/
#define HF_LASTNUM_REDIAL_IND 0x07 /*HF initiated last number redial*/
#define HF_DTMF_IND 0x08 /*HF transmitted DTMF code*/
#define VOICE_TAG_PHONE_NUM_REQ 0x09 /*HF initiated voice tag phone number request*/
#define NREC_DISENABLE_IND 0x0a /*HF request AG to disenable NREC function*/
#define HF_AVAILABLE_IND 0x0b /*Connection with HF has been established*/
#define HF_UNAVAILABLE_IND 0x0c /*Connection with HF has been released*/
#define AUDIO_CONN_ESTABLISHED_IND 0x0e /*SCO connection with HF has been established*/
#define AUDIO_CONN_RELEASED_IND 0x0f /*SCO connection with HF has been released*/
#define SPKVOL_CHANGED_IND 0x10 /*HF speaker volume changed indication*/
#define EXTEND_CMD_IND 0x11 /*HF transmitted extended AT Command*/
#define PCM_DATA_SEND_COMPLETE_IND 0x12 /*PCM data has been sent to HF device*/
#define PCM_DATA_SAVE_COMPLETE_IND 0x13 /*PCM data received from HF device has been saved to the specific buffer*/
/*device information struct for inquired Hands-Free deveces*/
struct DEVICE_INFO {
UCHAR bd_addr[BD_ADDR_LEN]; /*Bluetooth Baseband Address, BD_ADDR_LEN = 6*/
UCHAR dev_name[MAX_NAME_LEN]; /*device name, MAX_NAME_LEN = 64*/
UCHAR sec_mode; /*security mode*/
};
/*user interfaces for the HF Tester library*/
void HFT_RegEventCBFunc(EVENT_CBK *cbk);
void HFT_RegPairCBFunc(PAIR_CBK *cbk);
UCHAR HFT_Init(UCHAR security_mode, UCHAR encryption);
void HFT_Done();
UCHAR HFT_InquiryRequest(UCHAR duration, UCHAR name_required, DWORD *num_dev, struct DEVICE_INFO *dev_list);
UCHAR HFT_PairRequest(UCHAR *bd_addr);
void HFT_SendPinCode(UCHAR *bd_addr, UCHAR *pin_code);
void HFT_SendLinkKey(UCHAR *bd_addr, UCHAR *link_key);
void HFT_RejectLinkKeyReq(UCHAR *bd_addr);
UCHAR HFT_ConnectWithHF(UCHAR *bd_addr);
UCHAR HFT_SendExtendATCmd(UCHAR *at_cmd);
UCHAR HFT_SetupScoConn(WORD pkt_type);
UCHAR HFT_ReleaseScoConn();
void HFT_DisconnectWithHF();
UCHAR HFT_StartPCMDataSend(UCHAR *buffer, DWORD bytes_to_send);
DWORD HFT_StopPCMDataSend();
UCHAR HFT_StartPCMDataSave(UCHAR *buffer, DWORD buffer_size);
DWORD HFT_StopPCMDataSave();
DWORD HFT_GetCurrentPCMDataSize();
UCHAR HFT_ReadPCMDataFromBuffer(UCHAR *buffer, DWORD bytes_to_read, DWORD *read_bytes);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -