Fork of the official mbed C/C SDK provides the software platform and libraries to build your applications for RenBED.

Dependents:   1-RenBuggyTimed RenBED_RGB RenBED_RGB_PWM RenBED_RGB

Fork of mbed by mbed official

Committer:
elijahorr
Date:
Thu Apr 14 07:28:54 2016 +0000
Revision:
121:672067c3ada4
Parent:
98:8ab26030e058
.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 98:8ab26030e058 1 /* mbed Microcontroller Library
Kojto 98:8ab26030e058 2 * Copyright (c) 2015 ARM Limited
Kojto 98:8ab26030e058 3 *
Kojto 98:8ab26030e058 4 * Licensed under the Apache License, Version 2.0 (the "License");
Kojto 98:8ab26030e058 5 * you may not use this file except in compliance with the License.
Kojto 98:8ab26030e058 6 * You may obtain a copy of the License at
Kojto 98:8ab26030e058 7 *
Kojto 98:8ab26030e058 8 * http://www.apache.org/licenses/LICENSE-2.0
Kojto 98:8ab26030e058 9 *
Kojto 98:8ab26030e058 10 * Unless required by applicable law or agreed to in writing, software
Kojto 98:8ab26030e058 11 * distributed under the License is distributed on an "AS IS" BASIS,
Kojto 98:8ab26030e058 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Kojto 98:8ab26030e058 13 * See the License for the specific language governing permissions and
Kojto 98:8ab26030e058 14 * limitations under the License.
Kojto 98:8ab26030e058 15 */
Kojto 98:8ab26030e058 16 #ifndef MBED_LPTICKER_API_H
Kojto 98:8ab26030e058 17 #define MBED_LPTICKER_API_H
Kojto 98:8ab26030e058 18
Kojto 98:8ab26030e058 19 #include "device.h"
Kojto 98:8ab26030e058 20
Kojto 98:8ab26030e058 21 #if DEVICE_LOWPOWERTIMER
Kojto 98:8ab26030e058 22
Kojto 98:8ab26030e058 23 #include "ticker_api.h"
Kojto 98:8ab26030e058 24
Kojto 98:8ab26030e058 25 #ifdef __cplusplus
Kojto 98:8ab26030e058 26 extern "C" {
Kojto 98:8ab26030e058 27 #endif
Kojto 98:8ab26030e058 28
Kojto 98:8ab26030e058 29 /**
Kojto 98:8ab26030e058 30 * \defgroup LpTicker Low Power Ticker Functions
Kojto 98:8ab26030e058 31 * @{
Kojto 98:8ab26030e058 32 */
Kojto 98:8ab26030e058 33
Kojto 98:8ab26030e058 34 /** Get low power ticker's data
Kojto 98:8ab26030e058 35 *
Kojto 98:8ab26030e058 36 * @return The low power ticker data
Kojto 98:8ab26030e058 37 */
Kojto 98:8ab26030e058 38 const ticker_data_t* get_lp_ticker_data(void);
Kojto 98:8ab26030e058 39
Kojto 98:8ab26030e058 40 /** The wrapper for ticker_irq_handler, to pass lp ticker's data
Kojto 98:8ab26030e058 41 *
Kojto 98:8ab26030e058 42 */
Kojto 98:8ab26030e058 43 void lp_ticker_irq_handler(void);
Kojto 98:8ab26030e058 44
Kojto 98:8ab26030e058 45 /* HAL lp ticker */
Kojto 98:8ab26030e058 46
Kojto 98:8ab26030e058 47 /** Initialize the low power ticker
Kojto 98:8ab26030e058 48 *
Kojto 98:8ab26030e058 49 */
Kojto 98:8ab26030e058 50 void lp_ticker_init(void);
Kojto 98:8ab26030e058 51
Kojto 98:8ab26030e058 52 /** Read the current counter
Kojto 98:8ab26030e058 53 *
Kojto 98:8ab26030e058 54 * @return The current timer's counter value in microseconds
Kojto 98:8ab26030e058 55 */
Kojto 98:8ab26030e058 56 uint32_t lp_ticker_read(void);
Kojto 98:8ab26030e058 57
Kojto 98:8ab26030e058 58 /** Set interrupt for specified timestamp
Kojto 98:8ab26030e058 59 *
Kojto 98:8ab26030e058 60 * @param timestamp The time in microseconds to be set
Kojto 98:8ab26030e058 61 */
Kojto 98:8ab26030e058 62 void lp_ticker_set_interrupt(timestamp_t timestamp);
Kojto 98:8ab26030e058 63
Kojto 98:8ab26030e058 64 /** Disable low power ticker interrupt
Kojto 98:8ab26030e058 65 *
Kojto 98:8ab26030e058 66 */
Kojto 98:8ab26030e058 67 void lp_ticker_disable_interrupt(void);
Kojto 98:8ab26030e058 68
Kojto 98:8ab26030e058 69 /** Clear the low power ticker interrupt
Kojto 98:8ab26030e058 70 *
Kojto 98:8ab26030e058 71 */
Kojto 98:8ab26030e058 72 void lp_ticker_clear_interrupt(void);
Kojto 98:8ab26030e058 73
Kojto 98:8ab26030e058 74 /**@}*/
Kojto 98:8ab26030e058 75
Kojto 98:8ab26030e058 76 #ifdef __cplusplus
Kojto 98:8ab26030e058 77 }
Kojto 98:8ab26030e058 78 #endif
Kojto 98:8ab26030e058 79
Kojto 98:8ab26030e058 80 #endif
Kojto 98:8ab26030e058 81
Kojto 98:8ab26030e058 82 #endif