下面是我对例程做出的修改:
1.模式定义修改:IBEACON_SENDER模式改为IBEACON_RECEIVER模式了(修改宏定义#define IBEACON_SENDER 1 #define IBEACON_RECEIVER 0)
2.主函数的修改:
ESP_ERROR_CHECK(esp_bt_controller_mem_release(ESP_BT_MODE_BLE));/* 运行经典BT模式 */
esp_bt_controller_enable(ESP_BT_MODE_BLE);/*!< Run BLE模式*/
这两个地方都改成了ESP_BT_MODE_BLE模式,然后就可以永久扫描了
3.Bluetooth的使能和初始化,本来设置了bool是false
我把两个都改为了static bool bd_already_enable = TRUE static bool bd_already_init = TRUE;
就改了这一些但是现在只能扫描缺扫不到周围的蓝牙信号,我把我看了的例程放附件里发您还有哪些地方需要改吗
用esp32做广播扫描蓝牙信号用到了ble_ibeacon例程,但是把代码都看完了改完了还是有些不明白的地方
Re: 用esp32做广播扫描蓝牙信号用到了ble_ibeacon例程,但是把代码都看完了改完了还是有些不明白的地方
只能扫描,但是不能扫描到蓝牙信号。 这个信号是指 “RSSI” 吗
Re: 用esp32做广播扫描蓝牙信号用到了ble_ibeacon例程,但是把代码都看完了改完了还是有些不明白的地方
也不确定,就是感觉是代码不对,
ESP_ERROR_CHECK(nvs_flash_init());
ESP_ERROR_CHECK(esp_bt_controller_mem_release(ESP_BT_MODE_BLE));
esp_bt_controller_config_t bt_cfg = BT_CONTROLLER_INIT_CONFIG_DEFAULT();/*请在menuconfig中启用蓝牙以使用*/
esp_bt_controller_init(&bt_cfg);
这一部分的代码不懂 这三个子函数引导定义进去的话都是关闭的用不了,不知道需不需要用,大哥你懂这个例程/? 能帮我讲讲吗?万分感谢
ESP_ERROR_CHECK(nvs_flash_init());
ESP_ERROR_CHECK(esp_bt_controller_mem_release(ESP_BT_MODE_BLE));
esp_bt_controller_config_t bt_cfg = BT_CONTROLLER_INIT_CONFIG_DEFAULT();/*请在menuconfig中启用蓝牙以使用*/
esp_bt_controller_init(&bt_cfg);
这一部分的代码不懂 这三个子函数引导定义进去的话都是关闭的用不了,不知道需不需要用,大哥你懂这个例程/? 能帮我讲讲吗?万分感谢
Re: 用esp32做广播扫描蓝牙信号用到了ble_ibeacon例程,但是把代码都看完了改完了还是有些不明白的地方
1、esp_bt_controller_mem_release() 接口是释放你不使用的蓝牙模式的控制器内存,ibeacon 是基于BLE 的,所以不能使用ESP_BT_MODE_BLE 进行释放
2、没看到你上传的demo附件, 在我们esp-idf 下的ble_ibeacon 是持续扫描的。在esp_ble_gap_start_scanning(duration)中,duration= 0 意为持续扫描
3、不理解你所遇到的问题,可否在描述清晰些,或者上传一些对比样图描述下
2、没看到你上传的demo附件, 在我们esp-idf 下的ble_ibeacon 是持续扫描的。在esp_ble_gap_start_scanning(duration)中,duration= 0 意为持续扫描
3、不理解你所遇到的问题,可否在描述清晰些,或者上传一些对比样图描述下
Who is online
Users browsing this forum: axellin, Baidu [Spider], MicroController and 88 guests