Mbed OS Reference
Loading...
Searching...
No Matches
LowPowerTimer.h
1/* mbed Microcontroller Library
2 * Copyright (c) 2015 ARM Limited
3 * SPDX-License-Identifier: Apache-2.0
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17#ifndef MBED_LOWPOWERTIMER_H
18#define MBED_LOWPOWERTIMER_H
19
20#include "platform/platform.h"
21#include "drivers/Timer.h"
22#include "platform/NonCopyable.h"
23
24#if DEVICE_LPTICKER || defined(DOXYGEN_ONLY)
25
26#include "hal/lp_ticker_api.h"
27
28namespace mbed {
29/**
30 * @brief Timer implementation using the LP ticker.
31 *
32 * Does not lock the deep sleep, and counts time correctly even while deep sleeping. However, provides less precision
33 * than Timer. The exact precision varies by target but will be between 250us and 15us.
34 *
35 * @note When constructed, a LowPowerTimer is stopped and reset to zero time.
36 *
37 * @note Synchronization level: Interrupt safe
38 * \ingroup drivers_Timer
39 */
40class LowPowerTimer : public TimerBase {
41public:
43};
44
45} // namespace mbed
46
47#endif
48
49#endif
Timer implementation using the LP ticker.
Base class for Timer and LowPowerTimer.
Definition Timer.h:40