Arduino BLE множественное определение

Я пытаюсь считывать данные с датчика температуры, подключенного к моему Arduino Blend Micro (http://redbearlab.com/blendmicro/) и отправьте это значение через Bluetooth-маяки на Android-смартфон. Обе задачи могут выполняться успешно, когда они находятся в отдельном эскизе. Но когда я собираю их в один набросок (а также собираю библиотеки), появляется несколько ошибок. Данная ошибка говорит мне, что в моих библиотеках есть несколько определений.

библиотеки \ BLEPeripheral \ utility \ aci_queue.cpp.o: в функции
`Aci_queue_init (aci_queue_t *) ‘:

C: \ Users \ XXX \ Documents \ Ардуино \ библиотеки \ BLEPeripheral \ полезности / aci_queue.cpp: 33:
множественное определение `aci_queue_init (aci_queue_t *) ‘

библиотеки \ BLE_SDK_for_Arduino \ aci_queue.cpp.o: C: \ Users \ XXX \ Documents \ Arduino \ библиотеки \ BLE_SDK_for_Arduino \ Src / aci_queue.cpp: 31:
сначала определено здесь

библиотеки \ BLEPeripheral \ utility \ aci_queue.cpp.o: в функции
`Aci_queue_init (aci_queue_t *) ‘:

C: \ Users \ XXX \ Documents \ Ардуино \ библиотеки \ BLEPeripheral \ полезности / aci_queue.cpp: 33:
множественное определение `aci_queue_dequeue (aci_queue_t *,
hal_aci_data_t *)»

библиотеки \ BLE_SDK_for_Arduino \ aci_queue.cpp.o: aci_queue.cpp 🙁 text._Z17aci_queue_dequeueP11aci_queue_tP14hal_aci_data_t + 0х0).:
сначала определено здесь

Кажется, проблема между библиотеками BLEPeripheral и BLE_SDK_for_Arduino. Но исследования в интернете говорят мне, что они должны быть совместимы.

Вот мой код:

    //"RBL_nRF8001.h/spi.h/boards.h" is needed in every new project enter code here
#include <boards.h>
#include <string.h>
#include <Adafruit_BME280.h>
#include <RBL_nRF8001.h>
#include <RBL_services.h>
#include <SPI.h>
#include <EddystoneBeacon.h>

Adafruit_BME280 bme;

#define EDDYSTONE_BEACON_REQ   6
#define EDDYSTONE_BEACON_RDY   7
#define EDDYSTONE_BEACON_RST   4

EddystoneBeacon eddystoneBeacon = EddystoneBeacon(EDDYSTONE_BEACON_REQ, EDDYSTONE_BEACON_RDY, EDDYSTONE_BEACON_RST);

void setup() {
Serial.begin(9600);
delay(500);
bme.begin();
eddystoneBeacon.setLocalName("RoomSupervisor");
}

void loop() {
Serial.write("Start");
while(1){
Serial.write("Try to send...  ");
eddystoneBeacon.begin(-18, "WHAT THE HELL DOESN'T WORK!?");
eddystoneBeacon.loop();
Serial.write("   succesful! \n");
delay(3000);
}
}

Мне действительно нужны обе библиотеки для работы с Bluetooth и моим сенсором. Но как я могу это сделать, когда есть несколько определений? Я уже пытался удалить части одной библиотеки, чтобы избавиться от ошибок, но тогда мой эскиз больше не работал должным образом.

0

Решение

Попробуйте использовать только библиотеку RedBearLabs. Не удаляйте части библиотеки. Избавьтесь от sdk в папке библиотек и скопируйте только те библиотеки, которые вы хотите (нужно) включить в свою папку библиотеки Arduino.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector