473 lines
12 KiB
C
473 lines
12 KiB
C
|
/************************************************************************************
|
|||
|
* @Copyright (c) :(C)2021, Qindao ieslab Co., Ltd
|
|||
|
* @FileName :ble_driver.h
|
|||
|
* @Author :QDIES PLATFORM TEAM
|
|||
|
* @Version :V1.1
|
|||
|
* @Date :2021-7
|
|||
|
* @Description :
|
|||
|
************************************************************************************/
|
|||
|
|
|||
|
#ifndef __BLE_DRIVER_H
|
|||
|
#define __BLE_DRIVER_H
|
|||
|
|
|||
|
#include "type.h"
|
|||
|
#include <string.h>
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
extern "C"
|
|||
|
{
|
|||
|
#endif
|
|||
|
|
|||
|
/*---------------- <20><><EFBFBD>ú꿪<C3BA>أ<EFBFBD><D8A3>ɸ<EFBFBD><C9B8><EFBFBD>MCU<43><55><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>ģʽʹ<CABD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> --------------------*/
|
|||
|
//#define HDSC_HC32L13x 1 //<2F><><EFBFBD><EFBFBD>13xϵ<78><CFB5>
|
|||
|
//#define HDSC_HC32L196 (!HDSC_HC32L13x)//<2F><><EFBFBD><EFBFBD>196ϵ<36><CFB5>
|
|||
|
|
|||
|
#define BLE_CENTRAL_SLAVE_MOD 0 //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>֧<EFBFBD>֣<EFBFBD>0<EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD>1<EFBFBD><31><EFBFBD>ӻ<EFBFBD>
|
|||
|
|
|||
|
/*------------------------------------*/
|
|||
|
#define BLE_POW_PORT (GpioPortE) //<2F><>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>
|
|||
|
#define BLE_POW_PIN (GpioPin4)
|
|||
|
|
|||
|
#define BLE_CON_PORT (GpioPortA) //<2F><><EFBFBD><EFBFBD>״ָ̬ʾ
|
|||
|
#define BLE_CON_PIN (GpioPin4)
|
|||
|
#define BLE_CON_IRQ PORTA_IRQn
|
|||
|
#define BLE_CON_PRIORITY IrqLevel2 //<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
|
|||
|
#define BLE_LOWPOWER_PORT (GpioPortA) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define BLE_LOWPOWER_PIN (GpioPin2)
|
|||
|
|
|||
|
#define BLE_RXPORT_IRQ PORTA_IRQn
|
|||
|
#define BLE_RXPORT_PRIORITY IrqLevel2 //<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
|
|||
|
#define BLE_CONorRX_IRQHandler PORTA_IRQHandler
|
|||
|
//#define BLE_TX_IRQHandler PORTA_IRQHandler
|
|||
|
|
|||
|
#define BLE_CON_MSG 0xAA //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define BLE_DISCON_MSG 0xBB //<2F><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD>
|
|||
|
#define BLE_CON_NOMSG 0X00
|
|||
|
|
|||
|
#define CENTRAL_MODE 0xAA //<2F><><EFBFBD><EFBFBD>ģʽ
|
|||
|
#define SLAVE_MODE 0xBB //<2F>ӻ<EFBFBD>ģʽ
|
|||
|
#define MODE_ERROR 0x00 //<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ʧ<EFBFBD><CAA7>
|
|||
|
|
|||
|
|
|||
|
#define SCAN_END 0x00 //ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4>ʼ
|
|||
|
#define SCAN_ING 0xBB //ɨ<><C9A8><EFBFBD><EFBFBD>
|
|||
|
#define SACN_START_ORDER 0xAA //<2F><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>
|
|||
|
#define SACN_STOP_ORDER 0xBB //ֹͣɨ<D6B9><C9A8>
|
|||
|
#define SCAN_START 0xCC //<2F><>ʼɨ<CABC><C9A8>
|
|||
|
|
|||
|
#define CON_START_ORDER 0xAA //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define CON_STOP_ORDER 0xBB //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define CON_END 0xAA //<2F><><EFBFBD>ӽ<EFBFBD><D3BD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4>ʼ
|
|||
|
#define CON_ING 0xBB //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define CON_START 0xCC //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
#define CHK_KEY_WORD 0xAA //<2F><>ѯ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
#define SET_KEY_WORD 0xBB //<2F>Ĺؼ<C4B9><D8BC><EFBFBD>
|
|||
|
#define CLR_KEY_WORD 0xCC //ȡ<><C8A1><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
|
|||
|
#define CHK_WHITE_LIST 0xAA //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define SET_WHITE_LIST 0xBB //<2F>İ<DEB8><C4B0><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define CLR_WHITE_LIST 0xCC //ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
#define CHK_NAME_MAC 0xAA //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>MAC
|
|||
|
#define SET_NAME_MAC 0xBB //<2F><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>MAC
|
|||
|
|
|||
|
#define CHK_BLE_SEC 0xAA //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define SET_BLE_SEC 0xBB //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define CLR_BLE_SEC 0xCC //ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
#define CHK_BLE_PIN 0xAA //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define SET_BLE_PIN 0xBB //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define BLE_TASK_FAIL 0xA8
|
|||
|
#define BLE_TASK_SUCCESS 0xA9
|
|||
|
#define BLE_TASK_INIT 0xB0
|
|||
|
|
|||
|
#define BLE_NAME_MAX_LEN 12 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
//<2F><>ʼ<EFBFBD><CABC>״̬<D7B4><CCAC>״̬<D7B4><CCAC>BLE
|
|||
|
enum BLE_MAIN_STA
|
|||
|
{
|
|||
|
S_BLE_IDLE = 0 ,
|
|||
|
S_BLE_MAIN_INIT ,
|
|||
|
S_BLE_MAIN_CENTRAL_SWITCH ,
|
|||
|
S_BLE_MAIN_SCAN ,
|
|||
|
S_BLE_MAIN_CONNECT ,
|
|||
|
S_BLE_MAIN_NAME_MAC ,
|
|||
|
S_BLE_MAIN_ADV_DATA ,
|
|||
|
S_BLE_MAIN_ADV_PARAM ,
|
|||
|
S_BLE_MAIN_KEY_WORD ,
|
|||
|
S_BLE_MAIN_WHITE_LIST ,
|
|||
|
S_BLE_MAIN_CHK_STATUS ,
|
|||
|
S_BLE_MAIN_SEC_PIN ,
|
|||
|
};
|
|||
|
|
|||
|
enum BLEINIT_STA
|
|||
|
{
|
|||
|
S_BLEINIT_POWER_ON = 1 , //ģ<><C4A3><EFBFBD>͵<EFBFBD>
|
|||
|
S_BLEINIT_POWER_WAIT ,
|
|||
|
S_BLEINIT_POWER_DW , //<2F><>ʼ<EFBFBD>ϵ縴λ
|
|||
|
S_BLEINIT_POWER_DW_R ,
|
|||
|
S_BLEINIT_ATS , //<2F><><EFBFBD>ͳ<EFBFBD>ʼ<EFBFBD><CABC>ATָ<54><D6B8>
|
|||
|
S_BLEINIT_ADV0_CTL , //<2F>رչ㲥
|
|||
|
S_BLEINIT_VER , //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>汾
|
|||
|
S_BLEINIT_NAME , //<2F><>ѯ<EFBFBD>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
S_BLEINIT_NAME_SET , //<2F><><EFBFBD>ù㲥<C3B9><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
S_BLEINIT_MAC , //<2F><>ѯģ<D1AF><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
|
|||
|
S_BLEINIT_MAC_SET , //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
|
|||
|
S_BLEINIT_MAC_SAVE , //<2F><><EFBFBD><EFBFBD>MAC
|
|||
|
S_BLEINIT_MAC_RESET , //<2F><><EFBFBD><EFBFBD>MAC<41><43><EFBFBD>踴λ
|
|||
|
S_BLEINIT_TXPOW , //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>书<EFBFBD><E4B9A6>
|
|||
|
S_BLEINIT_TXPOW_SET , //<2F><><EFBFBD>÷<EFBFBD><C3B7>书<EFBFBD><E4B9A6>
|
|||
|
S_BLEINIT_ADVPERIOD , //<2F><>ѯ<EFBFBD>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
S_BLEINIT_ADVPERIOD_SET , //<2F><><EFBFBD>ù㲥<C3B9><E3B2A5><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
S_BLEINIT_CONPERIOD , //<2F><>ѯ<EFBFBD>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
S_BLEINIT_CONPERIOD_SET , //<2F><><EFBFBD>ù㲥<C3B9><E3B2A5><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
S_BLEINIT_ADVMFID_SET , //<2F><><EFBFBD>ù㲥<C3B9><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
S_BLEINIT_ADV_CTL , //<2F>㲥
|
|||
|
S_BLEINIT_END
|
|||
|
};
|
|||
|
|
|||
|
#if BLE_CENTRAL_SLAVE_MOD
|
|||
|
//BLE<4C><45><EFBFBD><EFBFBD>ģʽ<C4A3>л<EFBFBD>״̬
|
|||
|
enum BLEMODESWITCH_STA
|
|||
|
{
|
|||
|
// S_BLE_SWITCH_IDLE = 0 ,
|
|||
|
S_BLE_SWITCH_CENTRAL = 1 , //<2F><><EFBFBD><EFBFBD>ģʽ
|
|||
|
S_BLE_SWITCH_CENTRAL_CHK , //<2F>Ȳ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>״̬
|
|||
|
S_BLE_SWITCH_CENTRAL_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_SWITCH_ADV0 , //ֹͣ<CDA3>㲥
|
|||
|
S_BLE_SWITCH_STATUS , //<2F><>ѯ<EFBFBD><D1AF>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģʽ
|
|||
|
S_BLE_SWITCH_SET_CENTRAL , //<2F>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
|||
|
S_BLE_SWITCH_SLAVE ,
|
|||
|
S_BLE_SWITCH_SLAVE_CHK , //<2F>Ȳ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>״̬
|
|||
|
S_BLE_SWITCH_SLAVE_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_SWITCH_STATUS_SLAVE ,
|
|||
|
S_BLE_SWITCH_SET_SLAVE , //<2F>л<EFBFBD><D0BB>ӻ<EFBFBD>ģʽ
|
|||
|
S_BLE_SWITCH_ADV1 , //<2F><><EFBFBD><EFBFBD><EFBFBD>㲥
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45>ʼɨ<CABC><C9A8>״̬
|
|||
|
enum BLESCAN_STA
|
|||
|
{
|
|||
|
// S_BLE_SCAN_IDLE = 0 ,
|
|||
|
S_BLE_SCAN_START = 1 ,
|
|||
|
S_BLE_SCAN_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_SCAN_ING , //<2F><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>
|
|||
|
S_BLE_SCAN_OVERTIME , //ɨ<>賬ʱ
|
|||
|
S_BLE_SCAN_STOP ,
|
|||
|
S_BLE_SCAN_END ,
|
|||
|
S_BLE_SCAN_END_OVERTIME ,
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45><EFBFBD><EFBFBD>MAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLEWHITELIST_STA
|
|||
|
{
|
|||
|
S_BLE_WHITE_LIST = 1 , //<2F>İ<DEB8><C4B0><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_WHITE_LIST_R ,
|
|||
|
S_BLE_WHITE_LIST_CLR , //ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_WHITE_LIST_CLR_R ,
|
|||
|
S_BLE_WHITE_LIST_CHK , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_WHITE_LIST_CHK_R ,
|
|||
|
S_BLE_WHITE_LIST_SAVE , //<2F><><EFBFBD><EFBFBD>
|
|||
|
};
|
|||
|
|
|||
|
#endif
|
|||
|
//BLE<4C><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLECON_STA
|
|||
|
{
|
|||
|
S_BLE_CON_START = 1 ,
|
|||
|
S_BLE_CON_STATE_CHEK ,
|
|||
|
S_BLE_CON_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_CON_DISCON_WAIT , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
|
|||
|
S_BLE_CON_CLRBNDE ,
|
|||
|
S_BLE_CON_RECON , //<2F><><EFBFBD>¸<EFBFBD><C2B8><EFBFBD>MAC<41><43><EFBFBD><EFBFBD>
|
|||
|
S_BLE_CON_RECON_R ,
|
|||
|
S_BLE_CON_RECON_XIAODOU ,
|
|||
|
S_BLE_CON_STOP , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_CON_END ,
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>MAC״̬
|
|||
|
enum BLECHANGEMAC_STA
|
|||
|
{
|
|||
|
S_BLE_MAC_SET_START = 1 ,
|
|||
|
S_BLE_MAC_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_MAC_ADV0 , //ֹͣ<CDA3>㲥
|
|||
|
S_BLE_MAC_NAME , //<2F><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_MAC_MAC , //<2F><EFBFBD>MAC
|
|||
|
S_BLE_MAC_SAVE , //<2F><EFBFBD><DEB8><EFBFBD>MACҪ<43><D2AA><EFBFBD><EFBFBD>
|
|||
|
S_BLE_MAC_RESET , //<2F><EFBFBD><DEB8><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD>λ
|
|||
|
S_BLE_MAC_ADV1 ,
|
|||
|
S_BLE_MAC_CHK_START ,
|
|||
|
S_BLE_MAC_NAME_CHK ,
|
|||
|
S_BLE_MAC_MAC_CHK ,
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45><EFBFBD>¹㲥<C2B9><E3B2A5><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLEUPDATEADVDATA_STA
|
|||
|
{
|
|||
|
S_BLE_UPDATE_ADV_START = 1 ,
|
|||
|
S_BLE_UPDATE_ADV , //<2F><><EFBFBD>¹㲥<C2B9><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
S_BLE_UPDATE_ADV_RD_MAC ,
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45><EFBFBD>¹㲥<C2B9><E3B2A5><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLECHANGEADVPARA_STA
|
|||
|
{
|
|||
|
S_BLE_CHANGE_ADV_START = 1 ,
|
|||
|
S_BLE_CHANGE_ADV0 , //ֹͣ<CDA3>㲥
|
|||
|
S_BLE_CHANGE_ADV_PARAM , //<2F>Ĺ㲥<C4B9><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
S_BLE_CHANGE_CON_PARAM , //<2F><EFBFBD><DEB8><EFBFBD><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD>
|
|||
|
S_BLE_CHANGE_TX_POWER , //<2F>ķ<DEB8><C4B7>书<EFBFBD><E4B9A6>
|
|||
|
S_BLE_CHANGE_SCAN_TIMES , //<2F><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
S_BLE_CHANGE_SAVE , //<2F><EFBFBD><DEB8><EFBFBD><EFBFBD>ɺ<C9BA>
|
|||
|
S_BLE_CHANGE_ADV1 , //<2F><><EFBFBD><EFBFBD><EFBFBD>㲥
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45><EFBFBD>¹ؼ<C2B9><D8BC><EFBFBD>״̬
|
|||
|
enum BLECHANGEKEYWORD_STA
|
|||
|
{
|
|||
|
S_BLE_SET_KEY_WORD = 1 , //<2F>Ĺؼ<C4B9><D8BC><EFBFBD>
|
|||
|
S_BLE_SET_KEY_WORD_R ,
|
|||
|
S_BLE_CHK_KEY_WORD , //<2F><>ѯ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
S_BLE_CHK_KEY_WORD_R ,
|
|||
|
S_BLE_CLEAR_KEY_WORD , //ȡ<><C8A1><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
S_BLE_CLEAR_KEY_WORD_R ,
|
|||
|
S_BLE_KEY_WORD_SAVE , //<2F><><EFBFBD><EFBFBD>
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLECHKSTATUS_STA
|
|||
|
{
|
|||
|
S_BLE_CHK_STATUS = 1 , //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
S_BLE_CHK_STATUS_R ,
|
|||
|
};
|
|||
|
|
|||
|
//BLE<4C><45>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
enum BLESEC_STA
|
|||
|
{
|
|||
|
S_BLE_CHK_SEC = 1 , //<2F><>ѯSEC
|
|||
|
S_BLE_CHK_SEC_R ,
|
|||
|
S_BLE_CHK_PIN , //<2F><>ѯPIN
|
|||
|
S_BLE_SET_SEC_ADV0 ,
|
|||
|
S_BLE_SET_SEC_ADV0_R ,
|
|||
|
S_BLE_SET_PIN , //<2F><><EFBFBD><EFBFBD>PIN
|
|||
|
S_BLE_SET_PIN_R ,
|
|||
|
S_BLE_SET_SEC , //<2F><><EFBFBD><EFBFBD>SEC
|
|||
|
S_BLE_SET_SEC_R ,
|
|||
|
|
|||
|
S_BLE_SET_SEC_ADV1 ,
|
|||
|
S_BLE_CLR_SEC , //ȡ<><C8A1>
|
|||
|
S_BLE_CLR_SEC_R ,
|
|||
|
S_BLE_SEC_RESET ,
|
|||
|
S_BLE_SEC_SAVE , //<2F><><EFBFBD><EFBFBD>
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
//ATָ<54><D6B8>ͨ<EFBFBD><CDA8>״̬<D7B4><CCAC><EFBFBD><EFBFBD>״̬<D7B4><CCAC>״̬
|
|||
|
typedef enum{
|
|||
|
// AT_REQUEST_IDLE = 0 ,
|
|||
|
BLE_AT_REQUEST_SEND = 1 ,
|
|||
|
BLE_AT_REQUEST_CHECK ,
|
|||
|
BLE_AT_REQUEST_WT ,
|
|||
|
}BLE_TYP_STATE_AT_REQUEST;
|
|||
|
|
|||
|
|
|||
|
//ģ<><C4A3>ATָ<54><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
typedef enum {
|
|||
|
AT_CODE_AT = 0 , //AT
|
|||
|
AT_CODE_VER_CHK , //<2F>汾<EFBFBD><E6B1BE><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_NAME_CHK , //<2F>㲥<EFBFBD><E3B2A5><EFBFBD>Ʋ<EFBFBD>ѯ
|
|||
|
AT_CODE_NAME , //<2F>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_MAC_CHK , //<2F><>ѯMAC
|
|||
|
AT_CODE_MAC , //<2F><><EFBFBD><EFBFBD>MAC
|
|||
|
AT_CODE_TXPOWER_CHK , //<2F><><EFBFBD>书<EFBFBD>ʲ<EFBFBD>ѯ
|
|||
|
AT_CODE_TXPOWER , //<2F><><EFBFBD>书<EFBFBD><E4B9A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_ADVPARAM_CHK , //<2F>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ
|
|||
|
AT_CODE_ADVPARAM , //<2F>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_CONPARAM_CHK , //<2F><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD><EFBFBD><EFBFBD>ѯ
|
|||
|
AT_CODE_CONPARAM , //<2F><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_ADVMFID , //<2F>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_ADV0 , //<2F>رչ㲥
|
|||
|
AT_CODE_ADV1 , //<2F>㲥
|
|||
|
AT_CODE_DISCON , //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_SLAVE , //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD>ӻ<EFBFBD>ģʽ
|
|||
|
#if BLE_CENTRAL_SLAVE_MOD
|
|||
|
AT_CODE_CENTRAL , //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ģʽ
|
|||
|
AT_CODE_SCAN , //ɨ<><C9A8><EFBFBD><EFBFBD>Χ<EFBFBD>豸
|
|||
|
AT_CODE_CONNECT , //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_STOP_SCAN , //ֹͣɨ<D6B9><C9A8>
|
|||
|
AT_CODE_WHITE_LIST_SET , //<2F><><EFBFBD><EFBFBD>MAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_WHITE_LIST_CLR , //ȡ<><C8A1>MAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_WHITE_LIST_CHK , //<2F><>ѯMAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#endif
|
|||
|
AT_CODE_SCAN_TIMES , //ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_KEY_CHK , //<2F><>ѯ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
AT_CODE_KEY_SET , //<2F>Ĺؼ<C4B9><D8BC><EFBFBD>
|
|||
|
AT_CODE_KEY_CLR , //ȡ<><C8A1><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
AT_CODE_RESET , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
|
|||
|
AT_CODE_SAVE , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_STATUS , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
AT_CODE_SEC_CHK , //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_SEC_SET , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_SEC_CLR , //ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_PIN_CHK , //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_PIN , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
AT_CODE_CLRBNDE , //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>跢<EFBFBD><E8B7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
AT_CODE_ALL
|
|||
|
} BLE_TYP_AT_CMDCODE;
|
|||
|
|
|||
|
//ATָ<54><D6B8><EFBFBD>ȴ<EFBFBD>Ӧ<EFBFBD><D3A6>ʱ<EFBFBD><CAB1>
|
|||
|
typedef enum { //ʹ<><CAB9>100ms<6D><73>ʱ<EFBFBD><CAB1>
|
|||
|
BLE_WT_0S = 0,
|
|||
|
BLE_WT_halfS = 5,
|
|||
|
BLE_WT_1S = 10,
|
|||
|
BLE_WT_2S = 20,
|
|||
|
BLE_WT_5S = 50,
|
|||
|
} BLE_TYP_AT_WAIT_TIME;
|
|||
|
|
|||
|
//ATָ<54><D6B8><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>
|
|||
|
typedef enum {
|
|||
|
BLE_RETRY_0 = 0,
|
|||
|
BLE_RETRY_1,
|
|||
|
BLE_RETRY_2,
|
|||
|
BLE_RETRY_3,
|
|||
|
BLE_RETRY_4,
|
|||
|
BLE_RETRY_5,
|
|||
|
BLE_RETRY_15 = 15,
|
|||
|
} BLE_TYP_AT_RETRY_COUNT;
|
|||
|
|
|||
|
//ATָ<54><D6B8>״̬<D7B4><CCAC>ִ<EFBFBD>н<EFBFBD><D0BD><EFBFBD>
|
|||
|
typedef enum {
|
|||
|
ResultBusy = 0,
|
|||
|
ResultOk,
|
|||
|
ResultError,
|
|||
|
ResultFail
|
|||
|
} BLE_TYP_RESULT_CODE;
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>״̬
|
|||
|
typedef enum {
|
|||
|
BleNoCon = 0,
|
|||
|
BleSlaveCon,
|
|||
|
BleMasterCon
|
|||
|
} TYP_CON_STATUS;
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>״̬״̬
|
|||
|
typedef enum {
|
|||
|
BlePowerOk = 0,
|
|||
|
BlePowerWrong, //<2F><><EFBFBD><EFBFBD>,ǿ<>ƶϵ<C6B6>״̬
|
|||
|
BlePowerFactory //<2F><><EFBFBD><EFBFBD>ģʽ<C4A3>ڼ<EFBFBD><DABC>ϵ<EFBFBD>״̬
|
|||
|
} TYP_POWER_STATUS;
|
|||
|
//******************************* <20>ṹ<EFBFBD>嶨<EFBFBD><E5B6A8>*************************************
|
|||
|
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
unsigned char AtCode; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
unsigned char CaseAtNum; //Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
unsigned char ErrorLimit; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Գ<EFBFBD><D4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
// unsigned char ExpectLen; //<2F>ڴ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
|
|||
|
char* pAtCmdStr; //ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
|
|||
|
// char* pExpectData; //<2F>ڴ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
|
|||
|
unsigned short int WaitTime;//<2F>ȴ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬ms
|
|||
|
} BLE_STRUCT_AT_CMD, *P_BLE_STRUCT_AT_CMD;
|
|||
|
|
|||
|
typedef union
|
|||
|
{
|
|||
|
struct
|
|||
|
{
|
|||
|
u8 at_err:1 ; //<2F><>ѯAT<41>쳣
|
|||
|
u8 ver_err:1 ; //<2F><>ѯ<EFBFBD>汾<EFBFBD>쳣
|
|||
|
u8 name_chk_err:1 ; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|||
|
u8 name_set_err:1 ; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|||
|
u8 mac_chk_err:1 ; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>MAC<41>쳣
|
|||
|
u8 mac_set_err:1 ; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MAC<41>쳣
|
|||
|
|
|||
|
};
|
|||
|
mtype32_ err_byte;
|
|||
|
} BLE_STATE_ERR; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>ָʾ
|
|||
|
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
u8 Ble_cur_mode; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģʽ
|
|||
|
u8 Ble_scan_state; //<2F><>ǰɨ<C7B0><C9A8>״̬<D7B4><CCAC>ɨ<EFBFBD><C9A8>δ<EFBFBD><CEB4>ʼ<EFBFBD><CABC>ɨ<EFBFBD><C9A8><EFBFBD>С<EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 Ble_con_state; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
u8 Ble_power_flag; //<2F><>ǰ<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>״̬
|
|||
|
u8 Ble_con_MAC[12]; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>MAC
|
|||
|
u8 Ble_adv_data[13]; //<2F>㲥<EFBFBD><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
u8 Ble_key_word_len; //<2F>ؼ<EFBFBD><D8BC>ֳ<EFBFBD><D6B3><EFBFBD>
|
|||
|
u8 Ble_key_word[12]; //<2F>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 Ble_white_list[15][6]; //MAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 Ble_softverson[2]; //<2F><><EFBFBD><EFBFBD><EFBFBD>汾
|
|||
|
u8 Ble_name[12]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 Ble_mac[6]; //<2F><><EFBFBD><EFBFBD>MAC
|
|||
|
u8 Ble_cur_sec; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
u8 Ble_cur_pin[3]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰʹ<C7B0>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD>벻<EFBFBD><EBB2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
|
|||
|
|
|||
|
} BLE_WORK_STATE;
|
|||
|
|
|||
|
//******************************* <20>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>***************************************
|
|||
|
|
|||
|
|
|||
|
//******************************* <20>ⲿ<EFBFBD>ӿں<D3BF><DABA><EFBFBD>***********************************
|
|||
|
void BleInit(void);
|
|||
|
void BleMainMachine(void);
|
|||
|
u8 BleIfIdle(void);
|
|||
|
u8 BleIfSleep(void);
|
|||
|
void BlePreSleep(void);
|
|||
|
void BleWakeSleep(void);
|
|||
|
|
|||
|
void BlePowerOff(void);
|
|||
|
void BlePowerOn(void) ;
|
|||
|
u8 BleIfPowerOn(void);
|
|||
|
void BleForcePowerOff(TYP_POWER_STATUS data);
|
|||
|
|
|||
|
u8 format_ascii2hex(u8 *dest, u8 *sour, u8 sourlen);
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|||
|
void BleStartInitTask(void); //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
void BleCentralSwitchTask(u8 switch_type); //<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 BleGetCurMode(void); //<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0>ģʽ
|
|||
|
|
|||
|
|
|||
|
u8 BleConMacTask(u8 con_oeder,u8 *con_mac); //<2F><><EFBFBD>ӻ<EFBFBD><D3BB>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 BleGetCurConState(void); //<2F><>ѯ<EFBFBD><D1AF>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>״̬
|
|||
|
void BleNameMacTask(u8 opr_type,u8* name_src);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>MAC
|
|||
|
u8 BleUpdataAdvDataTask(u8* snd_data); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¹㲥<C2B9><E3B2A5><EFBFBD><EFBFBD>
|
|||
|
void BleChangeAdvParaTask(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
void BleKeyWordTask(u8 type,u8* key_word,u8 key_len);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
u8 BleGetCurKeyWord(u8* key_addr); //<2F><>ѯ<EFBFBD><D1AF>ǰ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>
|
|||
|
void BleChkStatusTask(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|||
|
u8 BleSecChkOrSetTask(u8 sec_type); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 BleChkCurSecState(u8 **cur_pin); //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>PIN
|
|||
|
|
|||
|
#if BLE_CENTRAL_SLAVE_MOD
|
|||
|
void BleMacWhiteListTask(u8 type,u8* list_addr);//<2F><><EFBFBD><EFBFBD>MAC<41><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
u8 BleScanTask(u8 scan_order); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>ɨ<EFBFBD><C9A8>
|
|||
|
u8 BleGetCurScanState(void); //<2F><>ȡ<EFBFBD><C8A1>ǰɨ<C7B0><C9A8>״̬
|
|||
|
#endif
|
|||
|
|
|||
|
void BleGetFirmVerson(u8* verson_addr); //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE>
|
|||
|
void BleGetCurMacAddr(u8 *cur_mac); //<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MAC
|
|||
|
void Ble_IODeInit(void);
|
|||
|
void BleClearResetCount(void);
|
|||
|
TYP_POWER_STATUS BleGetPowerState(void);
|
|||
|
//u8 BleCheckConInitMsg(void);
|
|||
|
//u8 BleClrConInitMsg(void);
|
|||
|
//u8 BleCheckTxInitMsg(void);
|
|||
|
//u8 BleClrTxInitMsg(void);
|
|||
|
|
|||
|
//#pragma pack()
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
}
|
|||
|
#endif
|
|||
|
|
|||
|
#endif
|
|||
|
|
|||
|
|
|||
|
|