test code 123

Dependencies:   mbed

Fork of LinkNode-Test by Qi Yao

Committer:
youkee
Date:
Thu Sep 01 05:14:03 2016 +0000
Revision:
0:1ad0e04b1bc5
change internal time from 1s to 200ms

Who changed what in which revision?

UserRevisionLine numberNew contents of line
youkee 0:1ad0e04b1bc5 1 /* mbed Microcontroller Library
youkee 0:1ad0e04b1bc5 2 * Copyright (c) 2006-2013 ARM Limited
youkee 0:1ad0e04b1bc5 3 *
youkee 0:1ad0e04b1bc5 4 * Licensed under the Apache License, Version 2.0 (the "License");
youkee 0:1ad0e04b1bc5 5 * you may not use this file except in compliance with the License.
youkee 0:1ad0e04b1bc5 6 * You may obtain a copy of the License at
youkee 0:1ad0e04b1bc5 7 *
youkee 0:1ad0e04b1bc5 8 * http://www.apache.org/licenses/LICENSE-2.0
youkee 0:1ad0e04b1bc5 9 *
youkee 0:1ad0e04b1bc5 10 * Unless required by applicable law or agreed to in writing, software
youkee 0:1ad0e04b1bc5 11 * distributed under the License is distributed on an "AS IS" BASIS,
youkee 0:1ad0e04b1bc5 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
youkee 0:1ad0e04b1bc5 13 * See the License for the specific language governing permissions and
youkee 0:1ad0e04b1bc5 14 * limitations under the License.
youkee 0:1ad0e04b1bc5 15 */
youkee 0:1ad0e04b1bc5 16
youkee 0:1ad0e04b1bc5 17 #ifndef __GAP_SCANNING_PARAMS_H__
youkee 0:1ad0e04b1bc5 18 #define __GAP_SCANNING_PARAMS_H__
youkee 0:1ad0e04b1bc5 19
youkee 0:1ad0e04b1bc5 20 class GapScanningParams {
youkee 0:1ad0e04b1bc5 21 public:
youkee 0:1ad0e04b1bc5 22 static const unsigned SCAN_INTERVAL_MIN = 0x0004; /**< Minimum Scan interval in 625us units - 2.5ms. */
youkee 0:1ad0e04b1bc5 23 static const unsigned SCAN_INTERVAL_MAX = 0x4000; /**< Maximum Scan interval in 625us units - 10.24s. */
youkee 0:1ad0e04b1bc5 24 static const unsigned SCAN_WINDOW_MIN = 0x0004; /**< Minimum Scan window in 625us units - 2.5ms. */
youkee 0:1ad0e04b1bc5 25 static const unsigned SCAN_WINDOW_MAX = 0x4000; /**< Maximum Scan window in 625us units - 10.24s. */
youkee 0:1ad0e04b1bc5 26 static const unsigned SCAN_TIMEOUT_MIN = 0x0001; /**< Minimum Scan timeout in seconds. */
youkee 0:1ad0e04b1bc5 27 static const unsigned SCAN_TIMEOUT_MAX = 0xFFFF; /**< Maximum Scan timeout in seconds. */
youkee 0:1ad0e04b1bc5 28
youkee 0:1ad0e04b1bc5 29 public:
youkee 0:1ad0e04b1bc5 30 GapScanningParams(uint16_t interval = SCAN_INTERVAL_MAX,
youkee 0:1ad0e04b1bc5 31 uint16_t window = SCAN_WINDOW_MAX,
youkee 0:1ad0e04b1bc5 32 uint16_t timeout = 0,
youkee 0:1ad0e04b1bc5 33 bool activeScanning = false);
youkee 0:1ad0e04b1bc5 34
youkee 0:1ad0e04b1bc5 35 static const uint16_t UNIT_0_625_MS = 625; /**< Number of microseconds in 0.625 milliseconds. */
youkee 0:1ad0e04b1bc5 36 static uint16_t MSEC_TO_SCAN_DURATION_UNITS(uint32_t durationInMillis) {
youkee 0:1ad0e04b1bc5 37 return (durationInMillis * 1000) / UNIT_0_625_MS;
youkee 0:1ad0e04b1bc5 38 }
youkee 0:1ad0e04b1bc5 39
youkee 0:1ad0e04b1bc5 40 ble_error_t setInterval(uint16_t newIntervalInMS);
youkee 0:1ad0e04b1bc5 41
youkee 0:1ad0e04b1bc5 42 ble_error_t setWindow(uint16_t newWindowInMS);
youkee 0:1ad0e04b1bc5 43
youkee 0:1ad0e04b1bc5 44 ble_error_t setTimeout(uint16_t newTimeout);
youkee 0:1ad0e04b1bc5 45
youkee 0:1ad0e04b1bc5 46 void setActiveScanning(bool activeScanning);
youkee 0:1ad0e04b1bc5 47
youkee 0:1ad0e04b1bc5 48 public:
youkee 0:1ad0e04b1bc5 49 /* @Note: The following return durations in units of 0.625ms */
youkee 0:1ad0e04b1bc5 50 uint16_t getInterval(void) const {return _interval;}
youkee 0:1ad0e04b1bc5 51 uint16_t getWindow(void) const {return _window; }
youkee 0:1ad0e04b1bc5 52
youkee 0:1ad0e04b1bc5 53 uint16_t getTimeout(void) const {return _timeout; }
youkee 0:1ad0e04b1bc5 54 bool getActiveScanning(void) const {return _activeScanning;}
youkee 0:1ad0e04b1bc5 55
youkee 0:1ad0e04b1bc5 56 private:
youkee 0:1ad0e04b1bc5 57 uint16_t _interval; /**< Scan interval in units of 625us (between 2.5ms and 10.24s). */
youkee 0:1ad0e04b1bc5 58 uint16_t _window; /**< Scan window in units of 625us (between 2.5ms and 10.24s). */
youkee 0:1ad0e04b1bc5 59 uint16_t _timeout; /**< Scan timeout between 0x0001 and 0xFFFF in seconds; 0x0000 disables timeout. */
youkee 0:1ad0e04b1bc5 60 bool _activeScanning; /**< Obtain the peer device's advertising data and (if possible) scanResponse. */
youkee 0:1ad0e04b1bc5 61
youkee 0:1ad0e04b1bc5 62 private:
youkee 0:1ad0e04b1bc5 63 /* Disallow copy constructor. */
youkee 0:1ad0e04b1bc5 64 GapScanningParams(const GapScanningParams &);
youkee 0:1ad0e04b1bc5 65 GapScanningParams& operator =(const GapScanningParams &in);
youkee 0:1ad0e04b1bc5 66 };
youkee 0:1ad0e04b1bc5 67
youkee 0:1ad0e04b1bc5 68 #endif // ifndef __GAP_SCANNING_PARAMS_H__