123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- #ifndef __BLE_COMM__
- #define __BLE_COMM__
- #include "sdk_common.h"
- #include "ble_db_discovery.h"
- #include "sdk_errors.h"
- #include "app_error.h"
- #include "app_util.h"
- #include "bsp_btn_ble.h"
- #include "ble.h"
- #include "ble_gap.h"
- #include "ble_hci.h"
- #include "nrf_sdh.h"
- #include "nrf_sdh_ble.h"
- #include "nrf_sdh_soc.h"
- #include "ble_nus_c.h"
- #include "nrf_ble_gatt.h"
- #include "nrf_pwr_mgmt.h"
- #include "nrf_ble_scan.h"
- #include "app_timer.h"
- #include "ble_conn_state.h"
- #include "SEGGER_RTT.h"
- #include "nrf_delay.h"
- #include "main.h"
- #include "queue.h"
- // <<< Use Configuration Wizard in Context Menu >>>\r\n
- #define APP_BLE_CONN_CFG_TAG 1
- // <q> USE_LADDR - 广播名称是否添加地址后缀
- #ifndef USE_LADDR
- #define USE_LADDR 1
- #endif
- // <q> USENAMEFR - 扫描是否采用名字匹配
- #ifndef USENAMEFR
- #define USENAMEFR 1
- #endif
- // <q> USEMACNAME - 采用mac地址作为蓝牙名称
- #ifndef USEMACNAME
- #define USEMACNAME 0
- #endif
- #define TARFET_LEN_MAX NRF_BLE_SCAN_NAME_MAX_LEN
- // <q> BLE_PRINTF - 调试信息
- #ifndef BLE_PRINTF
- #define BLE_PRINTF 1
- #endif
- #if BLE_PRINTF
- #define BLE_PRINT(...) SEGGER_RTT_printf(0, __VA_ARGS__)
- #else
- #define BLE_PRINT(...) ;
- #endif
- #define APP_ERR_BASE 0
- enum
- {
- APP_SUCCESS = APP_ERR_BASE,
- APP_ERR_DISCONN,
- APP_ERR_CONNECTED,
- APP_ERR_PARAMERR,
- APP_ERR_OVERLENGTH,
- APP_ERR_BUSY,
- };
- void err(int err_num);
- typedef void (*Ble_receive_handler_t)(unsigned char *, int);
- typedef void (*Ble_evt_cb)(void);
- unsigned int send_bytes_server(uint8_t *bytes, uint16_t len);
- unsigned int send_bytes_client(unsigned char *bytes, uint16_t len);
- void host_init(Ble_receive_handler_t receive_handler);
- void slave_init(Ble_receive_handler_t receive_handler);
- unsigned char slave_isconnect(void);
- unsigned char host_isconnect(void);
- unsigned int host_set_scan_name(char *name, int len);
- unsigned int slave_set_adv_name(char *name, int len);
- int Ble_Host_Connectd_Evt_Regist(Ble_evt_cb cb);
- int Ble_Host_Disconn_Evt_Regist(Ble_evt_cb cb);
- int Ble_Slave_Connectd_Evt_Regist(Ble_evt_cb cb);
- int Ble_Slave_Disconn_Evt_Regist(Ble_evt_cb cb);
- unsigned int Ble_update_conn_interval(float min_conn_interval, float max_conn_interval);
- unsigned int slave_update_conn_interval_request(float min_conn_interval, float max_conn_interval);
- void advertising_stop(void);
- void advertising_start(void);
- void scan_start(void);
- //关掉扫描直接调用 void nrf_ble_scan_stop(void);
- uint8_t Slave_Get7_5ms_interval(void);
- void slave_disconnect(void);
- void host_disconnect(void);
- void slave_get_conn_params(ble_gap_conn_params_t *p);
- void host_get_conn_params(ble_gap_conn_params_t *p);
- void slave_adv_init(void);
- signed char slave_get_rssi(void);
- signed char host_get_rssi(void);
- void IMU_Process_motion_queue(uint8_t IS_HOST,int16_t* _acc,int16_t* _gry,int16_t* _mag,uint16_t _press,uint8_t _rssi);
- void IMU_Rec_data(uint8_t* pdat,uint8_t len);
- void IMU_Dtalige(void);
- #endif
|