Please use mbed-src instead of this library.mbed-src supports GR-PEACH rev.C. mbed-srcライブラリをご利用ください。mbed-srcはGR-PEACH rev.Cに対応しています。

Fork of mbed-src_GR-PEACH_rev_c by GR-PEACH_producer_meeting

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-2013 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 
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024 
00025 typedef uint32_t timestamp_t;
00026 
00027 uint32_t us_ticker_read(void);
00028 
00029 typedef void (*ticker_event_handler)(uint32_t id);
00030 void us_ticker_set_handler(ticker_event_handler handler);
00031 
00032 typedef struct ticker_event_s {
00033     timestamp_t            timestamp;
00034     uint32_t               id;
00035     struct ticker_event_s *next;
00036 } ticker_event_t;
00037 
00038 void us_ticker_init(void);
00039 void us_ticker_set_interrupt(timestamp_t timestamp);
00040 void us_ticker_disable_interrupt(void);
00041 void us_ticker_clear_interrupt(void);
00042 void us_ticker_irq_handler(void);
00043 
00044 void us_ticker_insert_event(ticker_event_t *obj, timestamp_t timestamp, uint32_t id);
00045 void us_ticker_remove_event(ticker_event_t *obj);
00046 int us_ticker_get_next_timestamp(timestamp_t *timestamp);
00047 
00048 #ifdef __cplusplus
00049 }
00050 #endif
00051 
00052 #endif