]> granicus.if.org Git - esp-idf/commitdiff
component bt:Added the app_button event process function to the bt project
authorYulong <huangyulong@espressif.com>
Wed, 2 Nov 2016 06:21:31 +0000 (02:21 -0400)
committerYulong <huangyulong@espressif.com>
Wed, 2 Nov 2016 06:21:31 +0000 (02:21 -0400)
components/bt/bluedroid/profiles/esp/include/button_pro.h
examples/06_bluedroid_demos/components/bluedroid_demos/app_profiles/app_sample_button/app_button.c
examples/06_bluedroid_demos/components/bluedroid_demos/include/app_button_int.h

index 08ca83cd197d1010f0cfa62589ffeaaf5ad13194..8e95a0d99b4f7b13ea5f866d19cc2b6953072f2f 100644 (file)
@@ -65,30 +65,30 @@ enum
 
 typedef struct
 {
-    BD_ADDR remote_bda;
-    BOOLEAN need_rsp;
-    UINT16  clt_cfg;
+    BD_ADDR    remote_bda;
+    BOOLEAN    need_rsp;
+    uint16_t   clt_cfg;
 }but_write_data_t;
 
 typedef struct
 {
     BOOLEAN         in_use;
        BOOLEAN                 congest;
-    UINT16          conn_id;
+    uint16_t        conn_id;
     BOOLEAN         connected;
     BD_ADDR         remote_bda;
-    UINT32          trans_id;
-    UINT8           cur_srvc_id;
+    uint32_t        trans_id;
+    uint8_t         cur_srvc_id;
 
 }but_clcb_t;
 
 
 typedef struct
 {
-    UINT8           app_id;
-    UINT16          but_wirt_hdl;
-    UINT16          but_ntf_hdl;
-    UINT16          but_cfg_hdl;
+    uint8_t           app_id;
+    uint16_t          but_wirt_hdl;
+    uint16_t          but_ntf_hdl;
+    uint16_t          but_cfg_hdl;
  
     but_prf_cb_t    p_cback;
 
@@ -99,11 +99,11 @@ typedef struct
 typedef struct
 {
     but_clcb_t                 clcb;                   /* connection link*/
-    tGATT_IF                gatt_if;
+    esp_gatt_if_t           gatt_if;
     BOOLEAN                 enabled;
        BOOLEAN                                 is_primery;
-       but_inst_t               button_inst;
-    UINT8                   inst_id;
+       but_inst_t              button_inst;
+    uint8_t                 inst_id;
 }button_env_cb_t;
 
 void Button_CreateService(void);
index c685e8e445b9f598cb26fd00cfe1dd1e59607a62..c224e7031de0bbab347cbc189fe9a061aa909b9d 100644 (file)
 #include "button_pro.h"
 #include "app_button_int.h"
 
+static const tBTA_SYS_REG bta_gatts_reg =
+{
+    ble_but_prf_hdl_event,
+    ble_but_prf_disable
+};
+
+
 
 /*******************************************************************************
 **
@@ -82,6 +89,40 @@ BOOLEAN ble_but_prf_hdl_event(BT_HDR *msg_data)
 }
 
 
+/*******************************************************************************
+**
+** Function         ble_but_prf_disable
+**
+** Description      This function is called to disable the button profile modlue
+**
+** Parameters       None.
+**
+** Returns          None
+**
+*******************************************************************************/
+void ble_but_prf_disable(void)
+{
+    BT_HDR  *p_buf;
+
+    if (bt_prf_sys_is_register(PRF_ID_BUT_LE) == FALSE)
+    {
+        APPL_TRACE_WARNING("button profile Module not enabled/already disabled");
+        return;
+    }
+
+    if ((p_buf = (BT_HDR *) GKI_getbuf(sizeof(BT_HDR))) != NULL)
+    {
+        p_buf->event = BTA_GATTS_API_DISABLE_EVT;
+        bta_sys_sendmsg(p_buf);
+    }
+    bta_sys_deregister(PRF_ID_BUT_LE);
+
+}
+
+
+
+
+
 
 #endif         ///BUT_PROFILE_CFG
 
index 5bfb430fde36dafb3621af6e4021d02ef53c0518..bfd7c4708675c9947c40aae57fd8a68a3a3a8f5a 100644 (file)
@@ -105,10 +105,24 @@ typedef struct
     uint16_t conhdl;\r
 }tBUT_DISABLE_IND;\r
 \r
+typedef union\r
+{\r
+       uint16_t conhdl;\r
+       tBUT_CRT_DB_REQ                 but_crt_db_req;\r
+       tBUT_CRT_DB_CFM                 but_crt_db_cfm;\r
+       tBUT_CFG_NTF_IND                but_cfg_ntf_ind;\r
+       tBUT_SND_CHAR_VAL_REQ   but_snd_char_val_req;\r
+       tBUT_ENABLE_REQ                 but_enable_req;\r
+       tBUT_VAL_SND_CFM                but_val_snd_cfm;\r
+       tBUT_DISABLE_IND                but_disable_ind;\r
+}tBUT_PRF_MSG;\r
+\r
 \r
 \r
 BOOLEAN ble_but_prf_hdl_event(BT_HDR *msg_data);\r
 \r
+void ble_but_prf_disable(void);\r
+\r
 \r
 \r
 #endif ///BUT_PROFILE_CFG\r