component/bt : add bt device api

1. add get bd_addr function
This commit is contained in:
Tian Hao 2017-01-06 21:19:58 +08:00
parent e4b9563dac
commit 9c630b759f
6 changed files with 115 additions and 0 deletions

View file

@ -0,0 +1,22 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "esp_bt_device.h"
#include "controller.h"
const uint8_t *esp_bt_dev_get_address(void)
{
return controller_get_interface()->get_address()->address;
}

View file

@ -96,6 +96,9 @@ typedef enum {
/// Maximum of the application id
#define ESP_APP_ID_MAX 0x7fff
#define ESP_BD_ADDR_STR "%02x:%02x:%02x:%02x:%02x:%02x"
#define ESP_BD_ADDR_HEX(addr) addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,38 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef __ESP_BT_DEVICE_H__
#define __ESP_BT_DEVICE_H__
#include <stdint.h>
#include <stdbool.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
*
* @brief Get bluetooth device address. Must use after "esp_bluedroid_enable".
*
* @return bluetooth device address (six bytes)
*/
const uint8_t *esp_bt_dev_get_address(void);
#ifdef __cplusplus
}
#endif
#endif /* __ESP_BT_DEVICE_H__ */

View file

@ -6,3 +6,4 @@ BT COMMON
Bluetooth DEFINE <esp_bt_defs>
Bluetooth MAIN <esp_bt_main>
Bluetooth DEVICE <esp_bt_device>

View file

@ -0,0 +1,48 @@
BT DEVICE APIs
===============
Overview
--------
Bluetooth device reference APIs.
`Instructions`_
Application Example
-------------------
`Instructions`_
.. _Instructions: template.html
API Reference
-------------
Header Files
^^^^^^^^^^^^
* `bt/bluedroid/api/include/esp_bt_device.h <https://github.com/espressif/esp-idf/blob/master/components/bt/bluedroid/api/include/esp_bt_device.h>`_
Macros
^^^^^^
Type Definitions
^^^^^^^^^^^^^^^^
Enumerations
^^^^^^^^^^^^
Structures
^^^^^^^^^^
Functions
^^^^^^^^^
.. doxygenfunction:: esp_bt_dev_get_address

View file

@ -29,6 +29,7 @@
#include "esp_bt_defs.h"
#include "esp_gap_ble_api.h"
#include "esp_bt_main.h"
#include "esp_bt_device.h"
#include "blufi_demo.h"
static void blufi_event_callback(esp_blufi_cb_event_t event, esp_blufi_cb_param_t *param);
@ -328,6 +329,8 @@ void app_main()
return;
}
BLUFI_INFO("BD ADDR: "ESP_BD_ADDR_STR"\n", ESP_BD_ADDR_HEX(esp_bt_dev_get_address()));
BLUFI_INFO("BLUFI VERSION %04x\n", esp_blufi_get_version());
blufi_security_init();