mbed library sources

Fork of mbed-src by mbed official

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers us_ticker_api.h Source File

us_ticker_api.h

00001 /* mbed Microcontroller Library
00002  * Copyright (c) 2006-2015 ARM Limited
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 #ifndef MBED_US_TICKER_API_H
00017 #define MBED_US_TICKER_API_H
00018 
00019 #include <stdint.h>
00020 #include "ticker_api.h"
00021 
00022 #ifdef __cplusplus
00023 extern "C" {
00024 #endif
00025 
00026 /**
00027  * \defgroup UsTicker Microseconds Ticker Functions
00028  * @{
00029  */
00030 
00031 /** Get ticker's data
00032  *
00033  * @return The low power ticker data
00034  */
00035 const ticker_data_t* get_us_ticker_data(void);
00036 
00037 
00038 /** The wrapper for ticker_irq_handler, to pass us ticker's data
00039  *
00040  */
00041 void us_ticker_irq_handler(void);
00042 
00043 /* HAL us ticker */
00044 
00045 /** Initialize the ticker
00046  *
00047  */
00048 void us_ticker_init(void);
00049 
00050 /** Read the current counter
00051  *
00052  * @return The current timer's counter value in microseconds
00053  */
00054 uint32_t us_ticker_read(void);
00055 
00056 /** Set interrupt for specified timestamp
00057  *
00058  * @param timestamp The time in microseconds to be set
00059  */
00060 void us_ticker_set_interrupt(timestamp_t timestamp);
00061 
00062 /** Disable us ticker interrupt
00063  *
00064  */
00065 void us_ticker_disable_interrupt(void);
00066 
00067 /** Clear us ticker interrupt
00068  *
00069  */
00070 void us_ticker_clear_interrupt(void);
00071 
00072 /**@}*/
00073 
00074 #ifdef __cplusplus
00075 }
00076 #endif
00077 
00078 #endif