Integration of code (not working)

Dependencies:   mpu9250_i2c biquadFilter PCA peakdetection Eigen

Committer:
nikoletakuneva
Date:
Thu Jan 16 17:48:07 2020 +0000
Revision:
7:714b41918ab0
Parent:
4:83c7e402fff1
Final

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nikoletakuneva 4:83c7e402fff1 1 /* mbed Microcontroller Library
nikoletakuneva 4:83c7e402fff1 2 * Copyright (c) 2018 ARM Limited
nikoletakuneva 4:83c7e402fff1 3 *
nikoletakuneva 4:83c7e402fff1 4 * Licensed under the Apache License, Version 2.0 (the "License");
nikoletakuneva 4:83c7e402fff1 5 * you may not use this file except in compliance with the License.
nikoletakuneva 4:83c7e402fff1 6 * You may obtain a copy of the License at
nikoletakuneva 4:83c7e402fff1 7 *
nikoletakuneva 4:83c7e402fff1 8 * http://www.apache.org/licenses/LICENSE-2.0
nikoletakuneva 4:83c7e402fff1 9 *
nikoletakuneva 4:83c7e402fff1 10 * Unless required by applicable law or agreed to in writing, software
nikoletakuneva 4:83c7e402fff1 11 * distributed under the License is distributed on an "AS IS" BASIS,
nikoletakuneva 4:83c7e402fff1 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
nikoletakuneva 4:83c7e402fff1 13 * See the License for the specific language governing permissions and
nikoletakuneva 4:83c7e402fff1 14 * limitations under the License.
nikoletakuneva 4:83c7e402fff1 15 */
nikoletakuneva 4:83c7e402fff1 16
nikoletakuneva 4:83c7e402fff1 17 #include <mbed.h>
nikoletakuneva 4:83c7e402fff1 18 #include "ble/BLE.h"
nikoletakuneva 4:83c7e402fff1 19
nikoletakuneva 4:83c7e402fff1 20 inline void print_error(ble_error_t error, const char* msg)
nikoletakuneva 4:83c7e402fff1 21 {
nikoletakuneva 4:83c7e402fff1 22 printf("%s: ", msg);
nikoletakuneva 4:83c7e402fff1 23 switch(error) {
nikoletakuneva 4:83c7e402fff1 24 case BLE_ERROR_NONE:
nikoletakuneva 4:83c7e402fff1 25 printf("BLE_ERROR_NONE: No error");
nikoletakuneva 4:83c7e402fff1 26 break;
nikoletakuneva 4:83c7e402fff1 27 case BLE_ERROR_BUFFER_OVERFLOW:
nikoletakuneva 4:83c7e402fff1 28 printf("BLE_ERROR_BUFFER_OVERFLOW: The requested action would cause a buffer overflow and has been aborted");
nikoletakuneva 4:83c7e402fff1 29 break;
nikoletakuneva 4:83c7e402fff1 30 case BLE_ERROR_NOT_IMPLEMENTED:
nikoletakuneva 4:83c7e402fff1 31 printf("BLE_ERROR_NOT_IMPLEMENTED: Requested a feature that isn't yet implement or isn't supported by the target HW");
nikoletakuneva 4:83c7e402fff1 32 break;
nikoletakuneva 4:83c7e402fff1 33 case BLE_ERROR_PARAM_OUT_OF_RANGE:
nikoletakuneva 4:83c7e402fff1 34 printf("BLE_ERROR_PARAM_OUT_OF_RANGE: One of the supplied parameters is outside the valid range");
nikoletakuneva 4:83c7e402fff1 35 break;
nikoletakuneva 4:83c7e402fff1 36 case BLE_ERROR_INVALID_PARAM:
nikoletakuneva 4:83c7e402fff1 37 printf("BLE_ERROR_INVALID_PARAM: One of the supplied parameters is invalid");
nikoletakuneva 4:83c7e402fff1 38 break;
nikoletakuneva 4:83c7e402fff1 39 case BLE_STACK_BUSY:
nikoletakuneva 4:83c7e402fff1 40 printf("BLE_STACK_BUSY: The stack is busy");
nikoletakuneva 4:83c7e402fff1 41 break;
nikoletakuneva 4:83c7e402fff1 42 case BLE_ERROR_INVALID_STATE:
nikoletakuneva 4:83c7e402fff1 43 printf("BLE_ERROR_INVALID_STATE: Invalid state");
nikoletakuneva 4:83c7e402fff1 44 break;
nikoletakuneva 4:83c7e402fff1 45 case BLE_ERROR_NO_MEM:
nikoletakuneva 4:83c7e402fff1 46 printf("BLE_ERROR_NO_MEM: Out of Memory");
nikoletakuneva 4:83c7e402fff1 47 break;
nikoletakuneva 4:83c7e402fff1 48 case BLE_ERROR_OPERATION_NOT_PERMITTED:
nikoletakuneva 4:83c7e402fff1 49 printf("BLE_ERROR_OPERATION_NOT_PERMITTED");
nikoletakuneva 4:83c7e402fff1 50 break;
nikoletakuneva 4:83c7e402fff1 51 case BLE_ERROR_INITIALIZATION_INCOMPLETE:
nikoletakuneva 4:83c7e402fff1 52 printf("BLE_ERROR_INITIALIZATION_INCOMPLETE");
nikoletakuneva 4:83c7e402fff1 53 break;
nikoletakuneva 4:83c7e402fff1 54 case BLE_ERROR_ALREADY_INITIALIZED:
nikoletakuneva 4:83c7e402fff1 55 printf("BLE_ERROR_ALREADY_INITIALIZED");
nikoletakuneva 4:83c7e402fff1 56 break;
nikoletakuneva 4:83c7e402fff1 57 case BLE_ERROR_UNSPECIFIED:
nikoletakuneva 4:83c7e402fff1 58 printf("BLE_ERROR_UNSPECIFIED: Unknown error");
nikoletakuneva 4:83c7e402fff1 59 break;
nikoletakuneva 4:83c7e402fff1 60 case BLE_ERROR_INTERNAL_STACK_FAILURE:
nikoletakuneva 4:83c7e402fff1 61 printf("BLE_ERROR_INTERNAL_STACK_FAILURE: internal stack faillure");
nikoletakuneva 4:83c7e402fff1 62 break;
nikoletakuneva 4:83c7e402fff1 63 }
nikoletakuneva 4:83c7e402fff1 64 printf("\r\n");
nikoletakuneva 4:83c7e402fff1 65 }
nikoletakuneva 4:83c7e402fff1 66
nikoletakuneva 4:83c7e402fff1 67 /** print device address to the terminal */
nikoletakuneva 4:83c7e402fff1 68 inline void print_address(const Gap::Address_t &addr)
nikoletakuneva 4:83c7e402fff1 69 {
nikoletakuneva 4:83c7e402fff1 70 printf("%02x:%02x:%02x:%02x:%02x:%02x\r\n",
nikoletakuneva 4:83c7e402fff1 71 addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]);
nikoletakuneva 4:83c7e402fff1 72 }
nikoletakuneva 4:83c7e402fff1 73
nikoletakuneva 4:83c7e402fff1 74 inline void print_mac_address()
nikoletakuneva 4:83c7e402fff1 75 {
nikoletakuneva 4:83c7e402fff1 76 /* Print out device MAC address to the console*/
nikoletakuneva 4:83c7e402fff1 77 Gap::AddressType_t addr_type;
nikoletakuneva 4:83c7e402fff1 78 Gap::Address_t address;
nikoletakuneva 4:83c7e402fff1 79 BLE::Instance().gap().getAddress(&addr_type, address);
nikoletakuneva 4:83c7e402fff1 80 printf("DEVICE MAC ADDRESS: ");
nikoletakuneva 4:83c7e402fff1 81 print_address(address);
nikoletakuneva 4:83c7e402fff1 82 }
nikoletakuneva 4:83c7e402fff1 83
nikoletakuneva 4:83c7e402fff1 84 inline const char* phy_to_string(Gap::Phy_t phy) {
nikoletakuneva 4:83c7e402fff1 85 switch(phy.value()) {
nikoletakuneva 4:83c7e402fff1 86 case Gap::Phy_t::LE_1M:
nikoletakuneva 4:83c7e402fff1 87 return "LE 1M";
nikoletakuneva 4:83c7e402fff1 88 case Gap::Phy_t::LE_2M:
nikoletakuneva 4:83c7e402fff1 89 return "LE 2M";
nikoletakuneva 4:83c7e402fff1 90 case Gap::Phy_t::LE_CODED:
nikoletakuneva 4:83c7e402fff1 91 return "LE coded";
nikoletakuneva 4:83c7e402fff1 92 default:
nikoletakuneva 4:83c7e402fff1 93 return "invalid PHY";
nikoletakuneva 4:83c7e402fff1 94 }
nikoletakuneva 4:83c7e402fff1 95 }