Previous version which works for my stm32f401 Nucleo board
Fork of X_NUCLEO_IDB0XA1 by
BlueNRGDevice.h
- Committer:
- Antonio Vilei
- Date:
- 2015-06-16
- Revision:
- 74:c4526f8284d5
- Parent:
- 70:d20d30f59b1c
- Child:
- 75:8d763da1ccc7
File content as of revision 74:c4526f8284d5:
/* mbed Microcontroller Library * Copyright (c) 2006-2013 ARM Limited * * 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. */ /** ****************************************************************************** * @file BlueNRGDevice.h * @author STMicroelectronics * @brief Header file for BLEDeviceInstanceBase based BlueNRGDevice ****************************************************************************** * @copy * * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. * * <h2><center>© COPYRIGHT 2013 STMicroelectronics</center></h2> */ #ifndef __BLUENRG_H__ #define __BLUENRG_H__ #define BLUENRG #define DEBUG_BLUENRG_USER #include "btle.h" #include "mbed.h" #include "blecommon.h" #include "BLEDevice.h" #include "BlueNRGGap.h" #include "BlueNRGGattServer.h" class BlueNRGDevice : public BLEDeviceInstanceBase { public: BlueNRGDevice(PinName mosi, PinName miso, PinName sck, PinName cs, PinName rst, PinName irq); virtual ~BlueNRGDevice(void); // <<<ANDREA>>> virtual const char *getVersion(void); virtual Gap& getGap(); virtual GattServer& getGattServer(); virtual ble_error_t init(void); virtual ble_error_t shutdown(void); virtual ble_error_t reset(void); virtual ble_error_t initializeSecurity(bool enableBonding = true, bool requireMITM = true, Gap::SecurityIOCapabilities_t iocaps = Gap::IO_CAPS_NONE, const Gap::Passkey_t passkey = NULL); virtual ble_error_t setTxPower(int8_t txPower); virtual void getPermittedTxPowerValues(const int8_t **, size_t *); virtual void waitForEvent(void); // <<<ANDREA>>> bool getIsInitialized(void); bool dataPresent(); int32_t spiRead(uint8_t *buffer, uint8_t buff_size); int32_t spiWrite(uint8_t* data1, uint8_t* data2, uint8_t Nb_bytes1, uint8_t Nb_bytes2); void disable_irq(); void enable_irq(); private: bool isInitialized; SPI spi_; DigitalOut nCS_; DigitalOut rst_; InterruptIn irq_; }; #endif